main() now sets the signal handlers (via function from previous
commit) before establishing the GMainLoop as well as invoke the
proper clean()'s after unref'ing the loop. at this point all four
interfaces are at the same place structurally. builds all cases.
+ set_signal_handlers();
+
localed_loop = g_main_loop_new(NULL, TRUE);
localed_freeable = g_ptr_array_new();
localed_loop = g_main_loop_new(NULL, TRUE);
localed_freeable = g_ptr_array_new();
NULL);
g_main_loop_run(localed_loop);
NULL);
g_main_loop_run(localed_loop);
+ /* runs until single g_main_loop_quit() call is raised inside <interface>_mem_clean() */
g_main_loop_unref(localed_loop);
g_main_loop_unref(localed_loop);
+ /* guaranteed unownable */
g_bus_unown_name(bus_descriptor);
g_bus_unown_name(bus_descriptor);
+ /* at this point no operations can occur with our data, it is safe to free it + its container */
+ g_ptr_array_free(localed_freeable, TRUE);
+ set_signal_handlers();
+
logind_loop = g_main_loop_new(NULL, TRUE);
logind_freeable = g_ptr_array_new();
logind_loop = g_main_loop_new(NULL, TRUE);
logind_freeable = g_ptr_array_new();
NULL);
g_main_loop_run(logind_loop);
NULL);
g_main_loop_run(logind_loop);
+ /* runs until single g_main_loop_quit() call is raised inside <interface>_mem_clean() */
g_main_loop_unref(logind_loop);
g_main_loop_unref(logind_loop);
+ /* guaranteed unownable */
g_bus_unown_name(bus_descriptor);
g_bus_unown_name(bus_descriptor);
+ /* at this point no operations can occur with our data, it is safe to free it + its container */
+ g_ptr_array_free(logind_freeable, TRUE);
+
+ set_signal_handlers();
+
timedated_loop = g_main_loop_new(NULL, TRUE);
timedated_freeable = g_ptr_array_new();
timedated_loop = g_main_loop_new(NULL, TRUE);
timedated_freeable = g_ptr_array_new();
NULL);
g_main_loop_run(timedated_loop);
NULL);
g_main_loop_run(timedated_loop);
+ /* runs until single g_main_loop_quit() call is raised inside <interface>_mem_clean() */
g_main_loop_unref(timedated_loop);
g_main_loop_unref(timedated_loop);
+ /* guaranteed unownable */
g_bus_unown_name(bus_descriptor);
g_bus_unown_name(bus_descriptor);
+ /* at this point no operations can occur with our data, it is safe to free it + its container */
+ g_ptr_array_free(timedated_freeable, TRUE);