From 9444eb4484e5691a52ddc458bd8b401c6e19571d Mon Sep 17 00:00:00 2001 From: rubidium Date: Mon, 21 Jan 2008 23:55:57 +0000 Subject: (svn r11939) -Codechange: some type fixes and very initial steps into supporting NDS by default. Based on work by Dominik. --- src/order_cmd.cpp | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'src/order_cmd.cpp') diff --git a/src/order_cmd.cpp b/src/order_cmd.cpp index a8d992aa4..0c0259705 100644 --- a/src/order_cmd.cpp +++ b/src/order_cmd.cpp @@ -1330,10 +1330,8 @@ static void Load_ORDR() if (CheckSavegameVersion(5)) { /* Pre-version 5 had an other layout for orders (uint16 instead of uint32) */ - uint16 orders[5000]; - len /= sizeof(uint16); - assert (len <= lengthof(orders)); + uint16 *orders = MallocT(len + 1); SlArray(orders, len, SLE_UINT16); @@ -1341,11 +1339,11 @@ static void Load_ORDR() Order *order = new (i) Order(); AssignOrder(order, UnpackVersion4Order(orders[i])); } - } else if (CheckSavegameVersionOldStyle(5, 2)) { - uint32 orders[5000]; - len /= sizeof(uint32); - assert (len <= lengthof(orders)); + free(orders); + } else if (CheckSavegameVersionOldStyle(5, 2)) { + len /= sizeof(uint16); + uint16 *orders = MallocT(len + 1); SlArray(orders, len, SLE_UINT32); @@ -1353,6 +1351,8 @@ static void Load_ORDR() Order *order = new (i) Order(); AssignOrder(order, UnpackOrder(orders[i])); } + + free(orders); } /* Update all the next pointer */ -- cgit v1.2.3-54-g00ecf