summaryrefslogtreecommitdiff
path: root/source4/gtk/tools/gregedit.c
diff options
context:
space:
mode:
Diffstat (limited to 'source4/gtk/tools/gregedit.c')
-rw-r--r--source4/gtk/tools/gregedit.c48
1 files changed, 23 insertions, 25 deletions
diff --git a/source4/gtk/tools/gregedit.c b/source4/gtk/tools/gregedit.c
index 918ebd6945..9d0a87f2a7 100644
--- a/source4/gtk/tools/gregedit.c
+++ b/source4/gtk/tools/gregedit.c
@@ -660,7 +660,7 @@ gboolean on_key_activate(GtkTreeSelection *selection,
return TRUE;
}
-static GtkWidget* create_mainwin (void)
+static GtkWidget* create_mainwindow(void)
{
GtkWidget *vbox1;
GtkWidget *menubar;
@@ -955,43 +955,41 @@ static GtkWidget* create_savefilewin (void)
return savefilewin;
}
+static int gregedit_load_defaults(void)
+{
+ WERROR error = reg_open_local(&registry);
+ if(!W_ERROR_IS_OK(error)) {
+ gtk_show_werror(mainwin, error);
+ return -1;
+ }
+ registry_load_root();
+
+ return 0;
+}
+
int main(int argc, char *argv[])
{
- poptContext pc;
- WERROR error;
- int opt;
- struct poptOption long_options[] = {
- POPT_AUTOHELP
- POPT_TABLEEND
- };
+ int ret;
gregedit_init_subsystems;
-
lp_load(dyn_CONFIGFILE,True,False,False);
load_interfaces();
+ setup_logging(argv[0], DEBUG_STDERR);
- gtk_init (&argc, &argv);
mem_ctx = talloc_init("gregedit");
- pc = poptGetContext(argv[0], argc, (const char **) argv, long_options,0);
+ gtk_init(&argc, &argv);
+ mainwin = create_mainwindow();
+ gtk_widget_show_all(mainwin);
- while((opt = poptGetNextOpt(pc)) != -1) {
- }
+ ret = gregedit_load_defaults();
+ if (ret != 0) goto failed;
- error = reg_open_local(&registry);
- if(!W_ERROR_IS_OK(error)) {
- gtk_show_werror(mainwin, error);
- return -1;
- }
- mainwin = create_mainwin ();
- registry_load_root();
-
- gtk_widget_show_all (mainwin);
-
- gtk_main ();
+ ret = gtk_event_loop();
+failed:
talloc_free(mem_ctx);
- return 0;
+ return ret;
}