Index: map.h =================================================================== RCS file: /home/freeciv/CVS/freeciv/common/map.h,v retrieving revision 1.82 diff -u -r1.82 map.h --- map.h 2001/07/31 11:14:41 1.82 +++ map.h 2001/08/02 23:44:39 @@ -190,8 +190,13 @@ void initialize_move_costs(void); void reset_move_costs(int x, int y); -#define map_adjust_x(X) \ - ((X) % map.xsize < 0 ? (X) % map.xsize + map.xsize : (X) % map.xsize) +#define map_adjust_x(X) \ + ((X) < 0 \ + ? ((X) % map.xsize + map.xsize) \ + : ((X) >= map.xsize \ + ? (X) % map.xsize \ + : (X))) + #define map_adjust_y(Y) \ (((Y)<0) ? 0 : (((Y)>=map.ysize) ? map.ysize-1 : (Y)))