r236 - trunk/code/botlib

DONOTREPLY at icculus.org DONOTREPLY at icculus.org
Wed Nov 2 16:46:05 EST 2005


Author: ludwig
Date: 2005-11-02 16:46:05 -0500 (Wed, 02 Nov 2005)
New Revision: 236

Modified:
   trunk/code/botlib/be_ai_chat.c
Log:
more alignment fixes


Modified: trunk/code/botlib/be_ai_chat.c
===================================================================
--- trunk/code/botlib/be_ai_chat.c	2005-11-02 21:45:48 UTC (rev 235)
+++ trunk/code/botlib/be_ai_chat.c	2005-11-02 21:46:05 UTC (rev 236)
@@ -980,19 +980,21 @@
 		//
 		while(PC_ReadToken(source, &token))
 		{
+			size_t len;
 			if (token.type != TT_NAME)
 			{
 				SourceError(source, "unknown random %s", token.string);
 				FreeSource(source);
 				return NULL;
 			} //end if
-			size += sizeof(bot_randomlist_t) + strlen(token.string) + 1;
+			len = (strlen(token.string) + 1 +sizeof(void*)-1) & ~(sizeof(void*)-1);
+			size += sizeof(bot_randomlist_t) + len;
 			if (pass)
 			{
 				random = (bot_randomlist_t *) ptr;
 				ptr += sizeof(bot_randomlist_t);
 				random->string = ptr;
-				ptr += strlen(token.string) + 1;
+				ptr += len;
 				strcpy(random->string, token.string);
 				random->firstrandomstring = NULL;
 				random->numstrings = 0;
@@ -1009,18 +1011,20 @@
 			} //end if
 			while(!PC_CheckTokenString(source, "}"))
 			{
+				size_t len;
 				if (!BotLoadChatMessage(source, chatmessagestring))
 				{
 					FreeSource(source);
 					return NULL;
 				} //end if
-				size += sizeof(bot_randomstring_t) + strlen(chatmessagestring) + 1;
+				len = (strlen(chatmessagestring) + 1 +sizeof(void*)-1) & ~(sizeof(void*)-1);
+				size += sizeof(bot_randomstring_t) + len;
 				if (pass)
 				{
 					randomstring = (bot_randomstring_t *) ptr;
 					ptr += sizeof(bot_randomstring_t);
 					randomstring->string = ptr;
-					ptr += strlen(chatmessagestring) + 1;
+					ptr += len;
 					strcpy(randomstring->string, chatmessagestring);
 					//
 					random->numstrings++;
@@ -2125,7 +2129,7 @@
 								ptr += sizeof(bot_chatmessage_t);
 								chatmessage->chatmessage = ptr;
 								strcpy(chatmessage->chatmessage, chatmessagestring);
-								ptr += strlen(chatmessagestring) + 1;
+								ptr += (strlen(chatmessagestring) + 1 +sizeof(void*)-1) & ~(sizeof(void*)-1);
 								//the number of chat messages increased
 								chattype->numchatmessages++;
 							} //end if




More information about the quake3-commits mailing list