#endif /* WITH_SMCLIENT */
#ifdef G_OS_WIN32
-#ifdef DATADIR
-#undef DATADIR
-#endif
#include <io.h>
#include <conio.h>
#if !(_WIN32_WINNT >= 0x0500)
{
GString *cmd_str;
gchar *cmd;
- gint argc;
- gchar **argv;
gboolean retval = FALSE;
GError *error = NULL;
}
cmd = g_string_free (cmd_str, FALSE);
- g_shell_parse_argv (cmd, &argc, &argv, &error);
- g_free (cmd);
-
+
if (!error) {
- retval = gdk_spawn_on_screen (gdk_screen_get_default (),
- NULL, argv, NULL,
- G_SPAWN_SEARCH_PATH,
- NULL, NULL, NULL,
- &error);
- g_strfreev (argv);
+ GAppInfo *app;
+
+ app = g_app_info_create_from_commandline (cmd, NULL, 0, &error);
+
+ if (app != NULL) {
+ retval = g_app_info_launch (app, NULL, NULL, &error);
+ g_object_unref (app);
+ }
}
if (error) {
g_error_free (error);
}
+ g_free (cmd);
+
return retval;
}
}
}
-static gchar*
-ev_get_locale_dir ()
-{
-#ifdef G_OS_WIN32
- gchar *install_dir = NULL, *locale_dir;
- gchar *retval = NULL;
-
- install_dir =
- g_win32_get_package_installation_directory_of_module (NULL);
-
- if (install_dir) {
- locale_dir = g_build_filename (install_dir,
- "share", "locale", NULL);
- retval = g_win32_locale_filename_from_utf8 (locale_dir);
- g_free (install_dir);
- g_free (locale_dir);
- }
-
- if (retval)
- return retval;
- else
- return g_strdup ("");
-#else
- return g_strdup (GNOMELOCALEDIR);
-#endif
-}
-
int
main (int argc, char *argv[])
{
#ifdef ENABLE_NLS
/* Initialize the i18n stuff */
- gchar *tmp = ev_get_locale_dir ();
- bindtextdomain (GETTEXT_PACKAGE, tmp);
- g_free (tmp);
+ bindtextdomain (GETTEXT_PACKAGE, ev_get_locale_dir());
bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
textdomain (GETTEXT_PACKAGE);
#endif