summaryrefslogtreecommitdiffstats
path: root/source/rofi.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/rofi.c')
-rw-r--r--source/rofi.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/source/rofi.c b/source/rofi.c
index c13df1fe..0e2b3a0f 100644
--- a/source/rofi.c
+++ b/source/rofi.c
@@ -415,9 +415,6 @@ static void cleanup ()
// Cleaning up memory allocated by the Xresources file.
config_xresource_free ();
- for ( unsigned int i = 0; i < num_modi; i++ ) {
- mode_free ( &( modi[i] ) );
- }
g_free ( modi );
g_free ( config_path );
@@ -549,7 +546,12 @@ static void rofi_collect_modi_destroy ( void )
{
for ( unsigned int i = 0; i < num_available_modi; i++ ) {
if ( available_modi[i]->module ) {
- g_module_close ( available_modi[i]->module );
+ GModule *mod = available_modi[i]->module;
+ available_modi[i] = NULL;
+ g_module_close ( mod );
+ }
+ if ( available_modi[i] ) {
+ mode_free ( &(available_modi[i]) );
}
}
g_free ( available_modi );