After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 776336 - NULL GstStructures cannot be deserialized
NULL GstStructures cannot be deserialized
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gstreamer (core)
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2016-12-21 10:16 UTC by Stefan Sauer (gstreamer, gtkdoc dev)
Modified: 2018-11-03 12:38 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Stefan Sauer (gstreamer, gtkdoc dev) 2016-12-21 10:16:28 UTC
When serializing a nested structure where a substructure is NULL, it will be serializes as:
sub=(structure)"\(NULL\)"

This cannot be serialized. Do we want to add support for (NULL) in the structure parser?
Comment 1 Stefan Sauer (gstreamer, gtkdoc dev) 2016-12-30 11:28:57 UTC
Small correction, we cannot *deserialize* them right now. From a quick sync on IRC we concluded that we should try to support this case in the deserialization. I'll post a patch when I have this fixed.
Comment 2 Tim-Philipp Müller 2016-12-30 11:29:55 UTC
I wonder if we should serialise this as "(NULL)" in the first place.

But in general I think we want to be able to serialise/deserialise NULL boxed types, yes.
Comment 3 Stefan Sauer (gstreamer, gtkdoc dev) 2016-12-30 18:28:41 UTC
What would be the alternative. I think serializing the type name is a good idea still. We could serialize as sub=(structure)0 or sub=(structure)NULL, but in any case we need to special case this.
Comment 4 Stefan Sauer (gstreamer, gtkdoc dev) 2016-12-30 19:54:35 UTC
From the tracer we're actually getting this, because we're logging with GST_PTR_FORMAT. When using gst_structure_to_string() having NULL ptr as structure fields does not work actually :/

Here is some background for it:
https://cgit.freedesktop.org/gstreamer/gstreamer/tree/plugins/tracers/gststats.c#n460

The tracer builds a structure compatible sprintf format for performance reasons. Maybe I need to sprintf each field and skip those that are NULL.
Comment 5 GStreamer system administrator 2018-11-03 12:38:40 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gstreamer/issues/211.