]> Pileus Git - ~andy/gtk/blobdiff - gdk-pixbuf/gdk-pixbuf-csource.c
Make 3.0 parallel-installable to 2.x
[~andy/gtk] / gdk-pixbuf / gdk-pixbuf-csource.c
index 29669c8a09e419feed007b9220ddf5182376cce0..c9b0d4f23895240361bea42e836e18c642c62b2f 100644 (file)
@@ -18,7 +18,9 @@
  */
 #include "config.h"
 
+#define __GTK_H_INSIDE__
 #include "../gtk/gtkversion.h" /* versioning */
+#undef __GTK_H_INSIDE__
 #include "gdk-pixbuf.h"
 #include "gdk-pixdata.h"
 #include <glib/gprintf.h>
@@ -29,8 +31,8 @@
 /* --- defines --- */
 #undef G_LOG_DOMAIN
 #define        G_LOG_DOMAIN    "Gdk-Pixbuf-CSource"
-#define PRG_NAME        "gdk-pixbuf-csource"
-#define PKG_NAME        "Gtk+"
+#define PRG_NAME        "gdk-pixbuf-csource-3.0"
+#define PKG_NAME        "GTK+"
 #define PKG_HTTP_HOME   "http://www.gtk.org"
 
 
@@ -75,6 +77,7 @@ main (int   argc,
 {
   GdkPixbuf *pixbuf;
   GError *error = NULL;
+  gchar *infilename;
 
   /* initialize glib/GdkPixbuf */
   g_type_init ();
@@ -90,7 +93,13 @@ main (int   argc,
          return 1;
        }
       
-      pixbuf = gdk_pixbuf_new_from_file (argv[1], &error);
+#ifdef G_OS_WIN32
+      infilename = g_locale_to_utf8 (argv[1], -1, NULL, NULL, NULL);
+#else
+      infilename = argv[1];
+#endif
+
+      pixbuf = gdk_pixbuf_new_from_file (infilename, &error);
       if (!pixbuf)
        {
          g_fprintf (stderr, "failed to load \"%s\": %s\n",
@@ -111,11 +120,20 @@ main (int   argc,
 
       while (j--)
        {
+#ifdef G_OS_WIN32
+         infilename = g_locale_to_utf8 (*p, -1, NULL, NULL, NULL);
+#else
+         infilename = *p;
+#endif
+
          if (!toggle)
-           image_name = *p++;
+           {
+             image_name = infilename;
+             p++;
+           }
          else
            {
-             pixbuf = gdk_pixbuf_new_from_file (*p, &error);
+             pixbuf = gdk_pixbuf_new_from_file (infilename, &error);
              if (!pixbuf)
                {
                  g_fprintf (stderr, "failed to load \"%s\": %s\n",
@@ -256,7 +274,7 @@ print_blurb (FILE    *bout,
   if (!print_help)
     {
       g_fprintf (bout, "%s version ", PRG_NAME);
-      g_fprintf (bout, "%u.%u.%u", GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION);
+      g_fprintf (bout, "%d.%d.%d", GTK_MAJOR_VERSION, GTK_MINOR_VERSION, GTK_MICRO_VERSION);
       g_fprintf (bout, "\n");
       g_fprintf (bout, "%s comes with ABSOLUTELY NO WARRANTY.\n", PRG_NAME);
       g_fprintf (bout, "You may redistribute copies of %s under the terms of\n", PRG_NAME);