diff options
-rw-r--r-- | Changelog-Trunk.txt | 1 | ||||
-rw-r--r-- | src/map/map.c | 7 |
2 files changed, 6 insertions, 2 deletions
diff --git a/Changelog-Trunk.txt b/Changelog-Trunk.txt index be26a66b8..b67520f26 100644 --- a/Changelog-Trunk.txt +++ b/Changelog-Trunk.txt @@ -4,6 +4,7 @@ AS OF SVN REV. 5091, WE ARE NOW USING TRUNK. ALL UNTESTED BUGFIXES/FEATURES GO IF YOU HAVE A WORKING AND TESTED BUGFIX PUT IT INTO STABLE AS WELL AS TRUNK. 2008/05/02 + * Fixed missing iterator destruction in the map_foreach* functions (followup to r12684). * Added backward compatible handling of PACKETVER 8 and 9. (followup to r12539) * Changes to map_foreach* functions: [FlavioJS] - removed the unecessary use of va_copy in map_foreachpc diff --git a/src/map/map.c b/src/map/map.c index fc9b41fde..79f72caac 100644 --- a/src/map/map.c +++ b/src/map/map.c @@ -1746,7 +1746,7 @@ void map_foreachpc(int (*func)(struct map_session_data* sd, va_list args), ...) DBIterator* iter; struct map_session_data* sd; - iter = pc_db->iterator(pc_db); + iter = db_iterator(pc_db); for( sd = (struct map_session_data*)iter->first(iter,NULL); iter->exists(iter); sd = (struct map_session_data*)iter->next(iter,NULL) ) { va_list args; @@ -1758,7 +1758,7 @@ void map_foreachpc(int (*func)(struct map_session_data* sd, va_list args), ...) if( ret == -1 ) break;// stop iterating } - iter->destroy(iter); + dbi_destroy(iter); } /// Applies func to all the mobs in the db. @@ -1780,6 +1780,7 @@ void map_foreachmob(int (*func)(struct mob_data* md, va_list args), ...) if( ret == -1 ) break;// stop iterating } + dbi_destroy(iter); } /// Applies func to all the npcs in the db. @@ -1805,6 +1806,7 @@ void map_foreachnpc(int (*func)(struct npc_data* nd, va_list args), ...) break;// stop iterating } } + dbi_destroy(iter); } /// Applies func to everything in the db. @@ -1826,6 +1828,7 @@ void map_foreachiddb(int (*func)(struct block_list* bl, va_list args), ...) if( ret == -1 ) break;// stop iterating } + dbi_destroy(iter); } /// Iterator. |