diff options
author | amber <amber@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2005-03-17 06:30:36 +0000 |
---|---|---|
committer | amber <amber@54d463be-8e91-2dee-dedb-b68131a5f0ec> | 2005-03-17 06:30:36 +0000 |
commit | 7ddbedc2077a747ecf1e034566493d4a470cb4d7 (patch) | |
tree | 47715a3f01cb851c675ea4f354f380a0e5b820f6 | |
parent | 5f4b632f3a99d56870ce1b58a7f72d13dabfc5af (diff) | |
download | hercules-7ddbedc2077a747ecf1e034566493d4a470cb4d7.tar.gz hercules-7ddbedc2077a747ecf1e034566493d4a470cb4d7.tar.bz2 hercules-7ddbedc2077a747ecf1e034566493d4a470cb4d7.tar.xz hercules-7ddbedc2077a747ecf1e034566493d4a470cb4d7.zip |
Fixed memory corruption
git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/branches/stable@1241 54d463be-8e91-2dee-dedb-b68131a5f0ec
-rw-r--r-- | Changelog-SVN.txt | 2 | ||||
-rw-r--r-- | src/common/core.c | 2 | ||||
-rw-r--r-- | src/map/map.c | 17 |
3 files changed, 12 insertions, 9 deletions
diff --git a/Changelog-SVN.txt b/Changelog-SVN.txt index f1241f134..3d7c75aba 100644 --- a/Changelog-SVN.txt +++ b/Changelog-SVN.txt @@ -1,6 +1,8 @@ Date Added 03/17 + * Fixed heap corrupion in map.c caused while loading maps + [SVN 1241: MouseJstr] * Re-fixed compile error in map.c -- sorry ^^; [celest] * trade.c fixed possibility of STORAGE+TRADE spooffing dupe [Lupus] Now, on accepting trade your active Storage window closes. (Either Common or Guils Storage) diff --git a/src/common/core.c b/src/common/core.c index 37a46825b..0b3d65fed 100644 --- a/src/common/core.c +++ b/src/common/core.c @@ -289,7 +289,9 @@ int main(int argc,char **argv) display_title(); +#ifndef BCHECK do_init_memmgr(argv[0]); // 一番最初に実行する必要がある +#endif tick_ = time(0); ticks = gettick(); diff --git a/src/map/map.c b/src/map/map.c index 066427111..1ee3840c7 100644 --- a/src/map/map.c +++ b/src/map/map.c @@ -1729,15 +1729,14 @@ int map_mapname2mapid(char *name) { md = (struct map_data*)strdb_search(map_db,name); - #ifdef USE_AFM - // If we can't find the .gat map try .afm instead [celest] - if(md==NULL && strstr(name,".gat")) { - char afm_name[16] = ""; - strncpy(afm_name, name, strlen(name) - 4); - strcat(afm_name, ".afm"); - md = (struct map_data*)strdb_search(map_db,afm_name); - } - #endif +#ifdef USE_AFM + // If we can't find the .gat map try .afm instead [celest] + if(md==NULL && strstr(name,".gat")) { + char *afm_name = strdup(name); + strcpy(&afm_name[strlen(name) - 3], "afm"); + md = (struct map_data*)strdb_search(map_db,afm_name); + } +#endif if(md==NULL || md->gat==NULL) return -1; |