File diff r14125:3ee08ca0423e → r14126:f23988064e74
src/saveload/order_sl.cpp
Show inline comments
 
@@ -123,25 +123,25 @@ static void Save_ORDR()
 
	}
 
}
 

	
 
static void Load_ORDR()
 
{
 
	if (CheckSavegameVersionOldStyle(5, 2)) {
 
		/* Version older than 5.2 did not have a ->next pointer. Convert them
 
		 * (in the old days, the orderlist was 5000 items big) */
 
		size_t len = SlGetFieldLength();
 

	
 
		if (CheckSavegameVersion(5)) {
 
			/* Pre-version 5 had an other layout for orders
 
			    (uint16 instead of uint32) */
 
			 * (uint16 instead of uint32) */
 
			len /= sizeof(uint16);
 
			uint16 *orders = MallocT<uint16>(len + 1);
 

	
 
			SlArray(orders, len, SLE_UINT16);
 

	
 
			for (size_t i = 0; i < len; ++i) {
 
				Order *o = new (i) Order();
 
				o->AssignOrder(UnpackVersion4Order(orders[i]));
 
			}
 

	
 
			free(orders);
 
		} else if (CheckSavegameVersionOldStyle(5, 2)) {