diff -Nur audacious-plugins-2.2-orig/src/alarm/alarm.c audacious-plugins-2.2-cfg_db_close/src/alarm/alarm.c --- audacious-plugins-2.2-orig/src/alarm/alarm.c 2009-11-22 23:49:52.000000000 +0100 +++ audacious-plugins-2.2-cfg_db_close/src/alarm/alarm.c 2009-12-19 19:43:39.000000000 +0100 @@ -354,6 +354,7 @@ alarm_conf.day[daynum].min = DEFAULT_ALARM_MIN; } + aud_cfg_db_close(conf); DEBUG("END alarm_read_config\n"); } diff -Nur audacious-plugins-2.2-orig/src/lastfm/lastfm.c audacious-plugins-2.2-cfg_db_close/src/lastfm/lastfm.c --- audacious-plugins-2.2-orig/src/lastfm/lastfm.c 2009-11-22 23:49:53.000000000 +0100 +++ audacious-plugins-2.2-cfg_db_close/src/lastfm/lastfm.c 2009-12-19 19:43:39.000000000 +0100 @@ -109,7 +109,7 @@ { aud_cfg_db_get_string(cfg, "audioscrobbler", "username", &username); aud_cfg_db_get_string(cfg, "audioscrobbler", "password", &password); - g_free(cfg); + aud_cfg_db_close(cfg); } if (username != NULL && password != NULL) { diff -Nur audacious-plugins-2.2-orig/src/neon/neon.c audacious-plugins-2.2-cfg_db_close/src/neon/neon.c --- audacious-plugins-2.2-orig/src/neon/neon.c 2009-11-22 23:49:53.000000000 +0100 +++ audacious-plugins-2.2-cfg_db_close/src/neon/neon.c 2009-12-19 19:43:39.000000000 +0100 @@ -508,6 +508,7 @@ aud_cfg_db_get_string(db, NULL, "proxy_user", &value); if (!value) { _DEBUG("<%p> proxy_auth requested but no proxy_user", userdata); + aud_cfg_db_close(db); _LEAVE -1; } g_strlcpy(username, value, NE_ABUFSIZ); @@ -516,11 +517,13 @@ aud_cfg_db_get_string(db, NULL, "proxy_pass", &value); if (!value) { _DEBUG("<%p> proxy_auth requested but no proxy_pass", userdata); + aud_cfg_db_close(db); _LEAVE -1; } g_strlcpy(password, value, NE_ABUFSIZ); value = NULL; + aud_cfg_db_close(db); _LEAVE attempt; }