[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] r23251 - Extractor/src/plugins
From: |
gnunet |
Subject: |
[GNUnet-SVN] r23251 - Extractor/src/plugins |
Date: |
Thu, 16 Aug 2012 09:20:55 +0200 |
Author: LRN
Date: 2012-08-16 09:20:55 +0200 (Thu, 16 Aug 2012)
New Revision: 23251
Modified:
Extractor/src/plugins/gstreamer_extractor.c
Log:
Be more picky when serializing types for unknown vals
Modified: Extractor/src/plugins/gstreamer_extractor.c
===================================================================
--- Extractor/src/plugins/gstreamer_extractor.c 2012-08-16 03:40:32 UTC (rev
23250)
+++ Extractor/src/plugins/gstreamer_extractor.c 2012-08-16 07:20:55 UTC (rev
23251)
@@ -847,7 +847,8 @@
{
PrivStruct *ps = (PrivStruct *) user_data;
gchar *str;
- const char *field_name = g_quark_to_string (field_id);
+ const gchar *field_name = g_quark_to_string (field_id);
+ const gchar *type_name = g_type_name (G_VALUE_TYPE (value));
/* TODO: check a list of known quarks, use specific EXTRACTOR_MetaType */
switch (G_VALUE_TYPE (value))
@@ -856,9 +857,17 @@
str = g_value_dup_string (value);
break;
case G_TYPE_UINT:
+ case G_TYPE_INT:
case G_TYPE_DOUBLE:
+ case G_TYPE_BOOLEAN:
+ str = gst_value_serialize (value);
+ break;
default:
- str = gst_value_serialize (value);
+ /* This is a potential source of invalid characters */
+ /* And it also might attempt to serialize binary data - such as images. */
+ str = NULL;
+ g_print ("Will not try to serialize structure field %s (%s)\n",
field_name, type_name);
+ break;
}
if (str != NULL)
{
@@ -1164,7 +1173,9 @@
str = g_value_dup_string (&val);
break;
case G_TYPE_UINT:
+ case G_TYPE_INT:
case G_TYPE_DOUBLE:
+ case G_TYPE_BOOLEAN:
str = gst_value_serialize (&val);
break;
default:
@@ -1319,9 +1330,12 @@
PrivStruct *ps = (PrivStruct *) user_data;
GValue val = { 0, };
gchar *topen, *str, *tclose;
+ const gchar *type_name;
gst_tag_list_copy_value (&val, tags, tag);
+ type_name = g_type_name (G_VALUE_TYPE (&val));
+
switch (G_VALUE_TYPE (&val))
{
case G_TYPE_STRING:
@@ -1336,6 +1350,7 @@
/* This is a potential source of invalid characters */
/* And it also might attempt to serialize binary data - such as images. */
str = NULL;
+ g_print ("Will not try to serialize tag %s (%s)\n", tag, type_name);
break;
}
if (str != NULL)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [GNUnet-SVN] r23251 - Extractor/src/plugins,
gnunet <=