From 8a541cdba3f581f2ffab1d2babc4fa08434f363e Mon Sep 17 00:00:00 2001 From: gepard1984 Date: Fri, 24 Feb 2012 16:50:34 +0000 Subject: [PATCH] Fixed `va_list` being reused in DBMap code (`linkdb_foreach()`) (bugreport:5367). git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@15628 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/common/db.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/common/db.c b/src/common/db.c index 74c3b1f91f..481e9db2a6 100644 --- a/src/common/db.c +++ b/src/common/db.c @@ -2601,15 +2601,14 @@ void linkdb_insert( struct linkdb_node** head, void *key, void* data) void linkdb_foreach( struct linkdb_node** head, LinkDBFunc func, ... ) { - va_list args; struct linkdb_node *node; - if( head == NULL ) return; - - va_start(args, func); node = *head; while ( node ) { + va_list args; + va_start(args, func); func( node->key, node->data, args ); + va_end(args); node = node->next; } }