diff options
Diffstat (limited to 'wsutil')
-rw-r--r-- | wsutil/plugins.c | 22 |
1 files changed, 6 insertions, 16 deletions
diff --git a/wsutil/plugins.c b/wsutil/plugins.c index d916c9cf77..d726e80c1e 100644 --- a/wsutil/plugins.c +++ b/wsutil/plugins.c @@ -435,22 +435,12 @@ free_plugin_type(gpointer p, gpointer user_data _U_) void plugins_cleanup(void) { - plugin* prev; - plugin* cur; - - if (plugin_list) { - prev = plugin_list; - cur = plugin_list->next; - - do { - g_free(prev->name); - g_free(prev); - prev = cur; - cur = cur->next; - } while(cur); - - g_free(prev->name); - g_free(prev); + plugin* cur, *next; + + for (cur = plugin_list; cur != NULL; cur = next) { + next = cur->next; + g_free(cur->name); + g_free(cur); } g_slist_foreach(plugin_types, free_plugin_type, NULL); |