Fixed crash on startup

This commit is contained in:
Pierre Pronchery 2013-12-21 23:41:33 +01:00
parent 9b6a65d925
commit f39d28029a

View File

@ -38,11 +38,19 @@ typedef enum _WifiBrowserResponse
WBR_SAVE_CONFIGURATION
} WifiBrowserResponse;
struct _Panel
{
Config * config;
};
/* prototypes */
static int _error(Panel * panel, char const * message, int ret);
static int _usage(void);
static char const * _helper_config_get(Panel * panel, char const * section,
char const * variable);
/* callbacks */
static gboolean _wifibrowser_on_closex(gpointer data);
static void _wifibrowser_on_response(GtkWidget * widget, gint arg1,
@ -67,6 +75,17 @@ static int _usage(void)
}
/* helpers */
/* helper_config_get */
static char const * _helper_config_get(Panel * panel, char const * section,
char const * variable)
{
if(panel->config == NULL)
return NULL;
return config_get(panel->config, section, variable);
}
/* callbacks */
/* wifibrowser_on_closex */
static gboolean _wifibrowser_on_closex(gpointer data)
@ -110,6 +129,7 @@ static void _wifibrowser_on_response(GtkWidget * widget, gint arg1,
/* main */
int main(int argc, char * argv[])
{
Panel panel;
PanelAppletHelper helper;
WPA * wpa;
GtkWidget * window;
@ -119,10 +139,14 @@ int main(int argc, char * argv[])
GtkCellRenderer * renderer;
GtkTreeViewColumn * column;
panel.config = config_new();
/* FIXME load the configuration */
memset(&helper, 0, sizeof(helper));
helper.panel = &panel;
helper.type = PANEL_APPLET_TYPE_NORMAL;
helper.icon_size = GTK_ICON_SIZE_MENU;
helper.error = _error;
helper.config_get = _helper_config_get;
gtk_init(&argc, &argv);
if(optind != argc)
return _usage();
@ -176,5 +200,7 @@ int main(int argc, char * argv[])
gtk_widget_show_all(window);
gtk_main();
_wpa_destroy(wpa);
if(panel.config != NULL)
config_delete(panel.config);
return 0;
}