Imported Upstream version 2.61.2
[platform/upstream/glib.git] / gio / gio-tool.c
index 1c08431..c0aec74 100644 (file)
@@ -4,7 +4,7 @@
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
  * License as published by the Free Software Foundation; either
- * version 2 of the licence, or (at your option) any later version.
+ * version 2.1 of the License, or (at your option) any later version.
  *
  * This library is distributed in the hope that it will be useful,
  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 #include <errno.h>
 
 #include "gio-tool.h"
+#include "glib/glib-private.h"
 
+void
+print_error (const gchar *format, ...)
+{
+  gchar *message;
+  va_list args;
+
+  va_start (args, format);
+  message = g_strdup_vprintf (format, args);
+  va_end (args);
+
+  g_printerr ("gio: %s\n", message);
+  g_free (message);
+}
 
 void
-print_file_error (GFile *file, const char *message)
+print_file_error (GFile *file, const gchar *message)
 {
-  g_printerr ("gio: %s: %s\n", g_file_get_uri (file), message);
+  gchar *uri;
+
+  uri = g_file_get_uri (file);
+  print_error ("%s: %s", uri, message);
+  g_free (uri);
 }
 
 void
@@ -97,7 +115,7 @@ attribute_type_to_string (GFileAttributeType type)
     case G_FILE_ATTRIBUTE_TYPE_OBJECT:
       return "object";
     default:
-      return "uknown type";
+      return "unknown type";
     }
 }
 
@@ -184,7 +202,7 @@ handle_version (int argc, char *argv[], gboolean do_help)
   if (do_help || argc > 1)
     {
       if (!do_help)
-        g_printerr ("gio: %s\n\n", _("'version' takes no arguments"));
+        g_printerr ("gio: %s\n\n", _("“version” takes no arguments"));
 
       g_printerr ("%s\n", _("Usage:"));
       g_printerr ("  gio version\n");
@@ -203,7 +221,7 @@ static void
 usage (void)
 {
   g_printerr ("%s\n", _("Usage:"));
-  g_printerr ("  gio %s %s\n", _("COMMAND"), _("[ARGS...]"));
+  g_printerr ("  gio %s %s\n", _("COMMAND"), _("[ARGS]"));
   g_printerr ("\n");
   g_printerr ("%s\n", _("Commands:"));
   g_printerr ("  help     %s\n", _("Print help"));
@@ -225,7 +243,7 @@ usage (void)
   g_printerr ("  trash    %s\n", _("Move files or directories to the trash"));
   g_printerr ("  tree     %s\n", _("Lists the contents of locations in a tree"));
   g_printerr ("\n");
-  g_printerr (_("Use %s to get detailed help.\n"), "'gio help COMMAND'");
+  g_printerr (_("Use %s to get detailed help.\n"), "“gio help COMMAND”");
   exit (1);
 }
 
@@ -235,9 +253,20 @@ main (int argc, char **argv)
   const char *command;
   gboolean do_help;
 
-  setlocale (LC_ALL, "");
+#ifdef G_OS_WIN32
+  gchar *localedir;
+#endif
+
+  setlocale (LC_ALL, GLIB_DEFAULT_LOCALE);
   textdomain (GETTEXT_PACKAGE);
+
+#ifdef G_OS_WIN32
+  localedir = _glib_get_locale_dir ();
+  bindtextdomain (GETTEXT_PACKAGE, localedir);
+  g_free (localedir);
+#else
   bindtextdomain (GETTEXT_PACKAGE, GLIB_LOCALE_DIR);
+#endif
 
 #ifdef HAVE_BIND_TEXTDOMAIN_CODESET
   bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");