From 44cc95de2adf0300599ef42e8541c63078da84ba Mon Sep 17 00:00:00 2001 From: Wanne Date: Fri, 1 Sep 2006 14:45:59 +0000 Subject: [PATCH] - bugfix: German.Items.xml and Russian.Items.xml strings were not read properly into the game This bugfix is also included in the Release & Update which ships today. git-svn-id: https://ja2svn.mooo.com/source/ja2/trunk/GameSource/ja2_v1.13/Build@504 3b4a5df2-a311-0410-b5c6-a8a6f20db521 --- JA2.suo | Bin 83968 -> 84480 bytes Utils/XML_Items.cpp | 71 +++++++++++++++++++++++++++++++------------- 2 files changed, 50 insertions(+), 21 deletions(-) diff --git a/JA2.suo b/JA2.suo index 9699e1da7c5ebdaca2aaf1c3171e8e23bfd2bfb2..052fcd3b9a94e056ab33582fbc2eff9298533c56 100644 GIT binary patch delta 1497 zcma)6OH7kN5T0rOYSEvz&=x8JmWPpmAfN{gMxF{1A|>ca5?daLK+#%C1T;{UgC~P5 zu;HQ{O}uFSLlYBuB*+0Z!Ni*$z=SK|P>diHXMb8~Fe01G&hG4dvopKju76PHAJ)Bb zONJHG`{38lv#14tseYwbs+Nk5&{)V-@Iec7&?uF}0~O#Riwp9g3A(@wr6gXO_w4#B zTlxxZEEvd=OtM9deUUN`iSP-?dgVUNMzOLk$0N%!*kZn?04$McS)9SlN(?Iu|F@e4^aVP71xo&u;B(QC-=p=|C_PbQhV8#HYNH*^XEGZ}3;_3<>kPM%Hb zQWK5bVo?OR49(;%0(gZgLu_B4HV7x=Ngbh1JpV`4GEcqB>tL9oc_OE5j z0J_Ub3YmK^0w(i|S~h8tiaIt-eLAACzx1I%MAY^Q>>vz!vPOO7rZ3Ru(11Mc3z> zt5vfM&dtk4S};W|D#4Gp3)!nplj05yBX3N@bXNAkl92@UbZmkFO|2HPdxjhHp6!P7XxavL-739D-?!q8h+C-QMb=ct5E1YRm( zasM_g^JuGGTIRx~Ffk*<&7&k+iN<%-GwLR9`#%uTR2IY)%n*Ax=zP6&qAfe*SNTyA zwe2=xcGCb5tm{%i-YA%0QFg@6Cv`Z@AE%?8`z1^*-}jgZxbI!lIyF9R!vb-RCmMD* zA9=Cc9^sxF5pzm(+p}g>CBme37U|7zZDnbIsHV23MKSXD#TZ%44~tg;8nEL7I7=_G zbSS%o7wWMrux!K$?Wl}Z`lI9_2qs>9z$fDnvIQxDdu*5$STUpN5Vz+Lpe!5PbfZb= zzzc!8B)qQ+)TCpwCNOvsJrXx1poNonZ{V38y;?pWgUfu`fD`P;m?bcE2AzrM=l2rv zCZEYfOIqZvJJoN=qkabqYO(-AALGxh$o>maU%e=iAbAIabcA;i`uM>hFU0>sP3TVt cgJg#xLOWFmw^w3AtUr89LdOYvJIj}(KMJ*X9smFU delta 1171 zcmb7D-%Aux6h3EnRu-Ebf9<+r{@4u>5fgueg(j`2l#AvHR-jU@tCi)CK}SsyTS=ma z2=&@tdI{;FULwkQ7>Fpt)dwZ8x9B14f6z#wwR2aILFl0im-EecKfd|qo-^SETX@#? zwog*RlVSIVFKcK8faNKDLh?&hHo_j-x1b&dpa=S49GajPh9LxXFa(335(X$drm2T} z`o6u+>Oh4~_74~PD&-{z`|rReh(S9R&DATj1YRcMoxFF6dr*{Ubwpl z^my3N<~cU?M`2r@9KCyO%PLFsf+SNKrmZ)#6@T^oMpVusKG}4pZ*SZ#V~@N}U5(8m z_Osxs8z&jAUVOTU@3}?7MxLCC3Y)zv@o$I)5eYjZ7A(RAcDgGUAF!sbDvZ4gjv?=) zBfce}hc6~zj_59*mN1tuOX$0=(rph?BYI(!rpG)nc_cJX)ipX7{T!q@GwVFZbTu@C z{iHH$j(gQmLxpC?-z*TM)T7^bfq0uR*2?@J>*NHg96{*q`{2UcurElement = ELEMENT_LIST; + // WANNE if ( !localizedTextOnly ) memset(pData->curArray,0,sizeof(INVTYPE)*pData->maxArraySize); @@ -81,6 +82,7 @@ itemStartElementHandle(void *userData, const char *name, const char **atts) { pData->curElement = ELEMENT; + // WANNE if ( !localizedTextOnly ) memset(&pData->curItem,0,sizeof(INVTYPE)); @@ -282,6 +284,16 @@ itemEndElementHandle(void *userData, const char *name) // strncpy(pData->curItem.szItemName,pData->szCharData,MAX_CHAR_DATA_LENGTH); // pData->curItem.szItemName[MAX_CHAR_DATA_LENGTH] = '\0'; //} + + // WANNE + if(MAX_CHAR_DATA_LENGTH >= strlen(pData->szCharData)) + strcpy(pData->curItem.szItemName,pData->szCharData); + else + { + strncpy(pData->curItem.szItemName,pData->szCharData,MAX_CHAR_DATA_LENGTH); + pData->curItem.szItemName[MAX_CHAR_DATA_LENGTH] = '\0'; + } + for(int i=0;iszCharData),MAX_CHAR_DATA_LENGTH);i++) { temp = pData->szCharData[i]; @@ -294,6 +306,17 @@ itemEndElementHandle(void *userData, const char *name) //DebugMsg (TOPIC_JA2,DBG_LEVEL_3,"itemEndElementHandle: longitemname"); pData->curElement = ELEMENT; + // WANNE + if(MAX_CHAR_DATA_LENGTH >= strlen(pData->szCharData)) + { + strcpy(pData->curItem.szLongItemName,pData->szCharData); + } + else + { + strncpy(pData->curItem.szLongItemName,pData->szCharData,MAX_CHAR_DATA_LENGTH); + pData->curItem.szLongItemName[MAX_CHAR_DATA_LENGTH] = '\0'; + } + for(int i=0;iszCharData),MAX_CHAR_DATA_LENGTH);i++) { temp = pData->szCharData[i]; @@ -315,13 +338,15 @@ itemEndElementHandle(void *userData, const char *name) //DebugMsg (TOPIC_JA2,DBG_LEVEL_3,"itemEndElementHandle: itemdesc"); pData->curElement = ELEMENT; - //if(MAX_CHAR_DATA_LENGTH >= strlen(pData->szCharData)) - // strcpy(pData->curItem.szItemDesc,pData->szCharData); - //else - //{ - // strncpy(pData->curItem.szItemDesc,pData->szCharData,MAX_CHAR_DATA_LENGTH); - // pData->curItem.szItemDesc[MAX_CHAR_DATA_LENGTH] = '\0'; - //} + // WANNE + if(MAX_CHAR_DATA_LENGTH >= strlen(pData->szCharData)) + strcpy(pData->curItem.szItemDesc,pData->szCharData); + else + { + strncpy(pData->curItem.szItemDesc,pData->szCharData,MAX_CHAR_DATA_LENGTH); + pData->curItem.szItemDesc[MAX_CHAR_DATA_LENGTH] = '\0'; + } + for(int i=0;iszCharData),MAX_CHAR_DATA_LENGTH);i++) { temp = pData->szCharData[i]; @@ -334,13 +359,15 @@ itemEndElementHandle(void *userData, const char *name) //DebugMsg (TOPIC_JA2,DBG_LEVEL_3,"itemEndElementHandle: brname"); pData->curElement = ELEMENT; - //if(MAX_CHAR_DATA_LENGTH >= strlen(pData->szCharData)) - // strcpy(pData->curItem.szBRName,pData->szCharData); - //else - //{ - // strncpy(pData->curItem.szBRName,pData->szCharData,MAX_CHAR_DATA_LENGTH); - // pData->curItem.szBRName[MAX_CHAR_DATA_LENGTH] = '\0'; - //} + // WANNE + if(MAX_CHAR_DATA_LENGTH >= strlen(pData->szCharData)) + strcpy(pData->curItem.szBRName,pData->szCharData); + else + { + strncpy(pData->curItem.szBRName,pData->szCharData,MAX_CHAR_DATA_LENGTH); + pData->curItem.szBRName[MAX_CHAR_DATA_LENGTH] = '\0'; + } + for(int i=0;iszCharData),MAX_CHAR_DATA_LENGTH);i++) { temp = pData->szCharData[i]; @@ -353,13 +380,15 @@ itemEndElementHandle(void *userData, const char *name) //DebugMsg (TOPIC_JA2,DBG_LEVEL_3,"itemEndElementHandle: brdesc"); pData->curElement = ELEMENT; - //if(MAX_CHAR_DATA_LENGTH >= strlen(pData->szCharData)) - // strcpy(pData->curItem.szBRDesc,pData->szCharData); - //else - //{ - // strncpy(pData->curItem.szBRDesc,pData->szCharData,MAX_CHAR_DATA_LENGTH); - // pData->curItem.szBRDesc[MAX_CHAR_DATA_LENGTH] = '\0'; - //} + // WANNE + if(MAX_CHAR_DATA_LENGTH >= strlen(pData->szCharData)) + strcpy(pData->curItem.szBRDesc,pData->szCharData); + else + { + strncpy(pData->curItem.szBRDesc,pData->szCharData,MAX_CHAR_DATA_LENGTH); + pData->curItem.szBRDesc[MAX_CHAR_DATA_LENGTH] = '\0'; + } + for(int i=0;iszCharData),MAX_CHAR_DATA_LENGTH);i++) { temp = pData->szCharData[i];