Line | Branch | Exec | Source |
---|---|---|---|
1 | #define _GNU_SOURCE | ||
2 | #include <gtk/gtk.h> | ||
3 | #include <stdbool.h> | ||
4 | #include "app.h" | ||
5 | |||
6 | static bool is_gtk_initialized = false; | ||
7 | |||
8 | 5 | void lazy_init_gtk(){ | |
9 |
2/2✓ Branch 0 taken 2 times.
✓ Branch 1 taken 3 times.
|
5 | if(!is_gtk_initialized){ |
10 | 2 | int argc = app__get_argc(); | |
11 | 2 | char **argv = app__get_argv(); | |
12 | 2 | gtk_init(&argc, &argv); | |
13 | 2 | is_gtk_initialized = true; | |
14 | } | ||
15 | 5 | } | |
16 | |||
17 | |||
18 | 1 | void show_error_message_format(const char * const format, ...){ | |
19 | 1 | lazy_init_gtk(); | |
20 | |||
21 | char * result; | ||
22 | va_list arglist; | ||
23 | 1 | va_start( arglist, format ); | |
24 | 1 | vasprintf( &result, format, arglist ); | |
25 | 1 | va_end( arglist ); | |
26 | |||
27 | 1 | GtkWidget * dialog = gtk_message_dialog_new (NULL,0,GTK_MESSAGE_ERROR,GTK_BUTTONS_CLOSE,"%s",result); | |
28 | 1 | gtk_window_set_title(GTK_WINDOW(dialog), "cmd polkit agent"); | |
29 | 1 | gtk_dialog_run(GTK_DIALOG(dialog)); | |
30 | 1 | gtk_widget_destroy( GTK_WIDGET(dialog) ); | |
31 | 1 | free(result); | |
32 | 1 | } | |
33 |