2007-04-02 Rodrigo Moya <rodrigo@gnome-db.org> * gnome-settings-daemon.c (gnome_settings_daemon_new): return NULL when there is an error, not exit(), so that we do proper cleanup. Remove code to register GConf callbacks, that is done in utils.c. (gnome_settings_daemon_get_conf_client, gnome_settings_daemon_register_callback, gnome_settings_daemon_spawn_with_input, gnome_settings_daemon_get_invisible, gnome_settings_daemon_delayed_show_dialog): removed from the GnomeSettingsDaemon interface. * utils.c (gnome_settings_get_config_client, gnome_settings_get_invisible, gnome_settings_register_config_callback, gnome_settings_spawn_with_input, gnome_settings_delayed_show_dialog): moved from GnomeSettingsDaemon interface. * factory.c (main): check return value from gnome_settings_daemon(). * *.c: adapted to changes in function names. * Makefile.am: put source files in alphabetical order. svn path=/trunk/; revision=7434
57 lines
1.4 KiB
C
57 lines
1.4 KiB
C
#include <config.h>
|
|
|
|
#include "gnome-settings-daemon.h"
|
|
|
|
#include <libintl.h>
|
|
#include <string.h>
|
|
|
|
#include <gconf/gconf.h>
|
|
|
|
#include <libgnome/gnome-init.h>
|
|
#include <libgnomeui/gnome-ui-init.h>
|
|
#include <libgnomeui/gnome-client.h>
|
|
|
|
GConfClient *conf_client = NULL;
|
|
|
|
int main (int argc, char *argv [])
|
|
{
|
|
GnomeProgram *program;
|
|
GnomeClient *session;
|
|
GnomeSettingsDaemon *settings_daemon;
|
|
gchar *restart_argv[] = { "gnome-settings-daemon", NULL, NULL };
|
|
|
|
restart_argv[1] = *argv;
|
|
|
|
bindtextdomain (GETTEXT_PACKAGE, GNOMELOCALEDIR);
|
|
bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
|
|
textdomain (GETTEXT_PACKAGE);
|
|
|
|
program = gnome_program_init ("gnome-settings-daemon", VERSION,
|
|
LIBGNOMEUI_MODULE,
|
|
argc, argv,
|
|
GNOME_CLIENT_PARAM_SM_CONNECT, FALSE,
|
|
NULL);
|
|
|
|
gconf_init (argc, argv, NULL); /* exits w/ message on failure */
|
|
|
|
if (!(settings_daemon = gnome_settings_daemon_new ()))
|
|
return 1;
|
|
|
|
session = gnome_master_client ();
|
|
gnome_client_set_restart_command (session, 2, restart_argv);
|
|
gnome_client_set_restart_style (session, GNOME_RESTART_IMMEDIATELY);
|
|
gnome_client_set_priority (session, 5);
|
|
g_signal_connect (session, "die",
|
|
G_CALLBACK (gtk_main_quit), NULL);
|
|
|
|
gtk_main ();
|
|
|
|
/* cleanup */
|
|
g_object_unref (program);
|
|
g_object_unref (settings_daemon);
|
|
|
|
if (conf_client)
|
|
g_object_unref (conf_client);
|
|
|
|
return -1;
|
|
}
|