diff options
author | rbuj <[email protected]> | 2019-03-14 08:52:34 +0100 |
---|---|---|
committer | ZenWalker <[email protected]> | 2019-04-14 14:38:44 +0200 |
commit | 538e7566185ccd4f6accd55fcb55644c0223d82f (patch) | |
tree | 67974a2fc1797bbb4e7403f6fa0aa6b40b71821b | |
parent | b2bd59f9559c161876515ee6696d5c8c94f0f49a (diff) | |
download | mate-applets-538e7566185ccd4f6accd55fcb55644c0223d82f.tar.bz2 mate-applets-538e7566185ccd4f6accd55fcb55644c0223d82f.tar.xz |
Fix use-after-free clang warning
battstat_applet.c:755:3: warning: Use of memory after it is freed
static_global_teardown (battstat);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
stickynotes.c:674:24: warning: Use of memory after it is freed
stickynotes->notes = g_list_remove(stickynotes->notes, note);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-rw-r--r-- | battstat/battstat_applet.c | 4 | ||||
-rw-r--r-- | stickynotes/stickynotes.c | 6 |
2 files changed, 6 insertions, 4 deletions
diff --git a/battstat/battstat_applet.c b/battstat/battstat_applet.c index bb52c7fd..dd66b4f5 100644 --- a/battstat/battstat_applet.c +++ b/battstat/battstat_applet.c @@ -750,9 +750,9 @@ destroy_applet( GtkWidget *widget, ProgressData *battstat ) g_object_unref( G_OBJECT(battstat->status) ); g_object_unref( G_OBJECT(battstat->percent) ); - g_free( battstat ); - static_global_teardown (battstat); + + g_free (battstat); } /* Common function invoked by the 'Help' context menu item and the 'Help' diff --git a/stickynotes/stickynotes.c b/stickynotes/stickynotes.c index f71577b0..dd0a4fc5 100644 --- a/stickynotes/stickynotes.c +++ b/stickynotes/stickynotes.c @@ -668,10 +668,12 @@ void stickynotes_remove(StickyNote *note) if (stickynote_get_empty(note) || !g_settings_get_boolean (stickynotes->settings, "confirm-deletion") || gtk_dialog_run(GTK_DIALOG(dialog)) == GTK_RESPONSE_OK) { - stickynote_free(note); /* Remove the note from the linked-list of all notes */ - stickynotes->notes = g_list_remove(stickynotes->notes, note); + stickynotes->notes = g_list_remove_all (stickynotes->notes, note); + + /* Destroy the note */ + stickynote_free (note); /* Update tooltips */ stickynotes_applet_update_tooltips(); |