gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r24230 - gnunet-gtk/src/fs


From: gnunet
Subject: [GNUnet-SVN] r24230 - gnunet-gtk/src/fs
Date: Mon, 8 Oct 2012 23:36:32 +0200

Author: grothoff
Date: 2012-10-08 23:36:32 +0200 (Mon, 08 Oct 2012)
New Revision: 24230

Modified:
   gnunet-gtk/src/fs/gnunet-fs-gtk_publish-edit-dialog.c
Log:
-keep gtk-style mime detection on GNU as a backup

Modified: gnunet-gtk/src/fs/gnunet-fs-gtk_publish-edit-dialog.c
===================================================================
--- gnunet-gtk/src/fs/gnunet-fs-gtk_publish-edit-dialog.c       2012-10-08 
21:33:26 UTC (rev 24229)
+++ gnunet-gtk/src/fs/gnunet-fs-gtk_publish-edit-dialog.c       2012-10-08 
21:36:32 UTC (rev 24230)
@@ -1034,7 +1034,7 @@
     gchar *fn;
     char *data;
     gsize data_size;
-    const char *mime;
+    char *mime;
     GFile *f;
 
     fn = gtk_file_chooser_get_filename (GTK_FILE_CHOOSER
@@ -1050,10 +1050,27 @@
     else
     {
       mime = get_mime_type (data, data_size);
+#if LINUX
+      if (NULL == mime)
+      {
+       /* fall back to Gtk mime-detection; this only works on GNU */
+       GFileInfo *finfo;
+       const char *gmime;
+       
+       finfo = g_file_query_info (f, G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE, 
+                                  0, NULL, NULL);
+       gmime = g_file_info_get_attribute_string (finfo,
+                                                 
G_FILE_ATTRIBUTE_STANDARD_CONTENT_TYPE);
+       if (NULL != gmime)
+         mime = GNUNET_strdup (gmime);
+       g_object_unref (finfo);
+      }
+#endif
       GNUNET_CONTAINER_meta_data_insert (meta, "<user>",
                                          EXTRACTOR_METATYPE_THUMBNAIL,
                                          EXTRACTOR_METAFORMAT_BINARY, mime,
                                          data, data_size);
+      GNUNET_free_non_null (mime);
     }
     g_object_unref (f);
     g_free (fn);




reply via email to

[Prev in Thread] Current Thread [Next in Thread]