ship_gui.c
changeset 174 bd79fb899824
parent 168 79f9ed5b23e6
child 176 84990c4b9212
--- a/ship_gui.c	Mon Sep 06 22:53:59 2004 +0000
+++ b/ship_gui.c	Tue Sep 07 19:01:06 2004 +0000
@@ -895,7 +895,6 @@
 		// Player0: 25; Player1: (41-25) 16; Player2: (43-41) 2
 		for (i = &_num_ship_sort[1]; i != endof(_num_ship_sort); i++) {*i += *(i-1);}
 	
-
 		// sort by owner, then only subsort the requested owner-vehicles
 		qsort(_ship_sort, n, sizeof(_ship_sort[0]), GeneralOwnerSorter);
 
@@ -967,6 +966,8 @@
 				StringID str;
 				v = DEREF_VEHICLE(_ship_sort[i].index);
 
+				assert(v->type == VEH_Ship && v->owner == window_number);
+
 				DrawShipImage(v, x + 19, y + 6, INVALID_VEHICLE);
 				DrawVehicleProfitButton(v, x, y+13);
 
@@ -1008,22 +1009,22 @@
 			ShowDropDownMenu(w, _vehicle_sort_listing, _ship_sort_type[(byte)w->window_number], 4, 0); // do it for widget 4
 			return;
 		case 6: { /* Matrix to show vehicles */
-			int id_v = (e->click.pt.y - PLY_WND_PRC__OFFSET_TOP_WIDGET) / PLY_WND_PRC__SIZE_OF_ROW_BIG;
+			uint32 id_v = (e->click.pt.y - PLY_WND_PRC__OFFSET_TOP_WIDGET) / PLY_WND_PRC__SIZE_OF_ROW_BIG;
 			
-			if ((uint)id_v >= w->vscroll.cap) { return;} // click out of bounds
+			if (id_v >= w->vscroll.cap) { return;} // click out of bounds
 
 			id_v += w->vscroll.pos;
 
 			{
-				byte owner		= (byte)w->window_number;
-				uint16 adder	= (owner == 0) ? 0 : _num_ship_sort[owner - 1]; // first element in list
+				const byte owner = (byte)w->window_number;
 				Vehicle *v;
+				id_v += (owner == 0) ? 0 : _num_ship_sort[owner - 1]; // first element in list
 
-				if (id_v + adder >= _num_ship_sort[owner]) { return;} // click out of vehicle bound
+				if (id_v >= _num_ship_sort[owner]) { return;} // click out of vehicle bound
 
-				v	= DEREF_VEHICLE(_ship_sort[adder+id_v].index); // add the offset id_x to that
+				v	= DEREF_VEHICLE(_ship_sort[id_v].index); // add the offset id_x to that
 
-				assert(v->type == VEH_Ship && v->owner == owner && v->owner == _ship_sort[adder+id_v].owner);
+				assert(v->type == VEH_Ship && v->owner == owner);
 
 				ShowShipViewWindow(v);
 			}