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 746584 - cppWrappersTest fails when linked against gstreamer 1.4.4
cppWrappersTest fails when linked against gstreamer 1.4.4
Status: RESOLVED FIXED
Product: GStreamer
Classification: Platform
Component: qt-gstreamer
git master
Other Linux
: Normal normal
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-03-21 20:39 UTC by Diane Trout
Modified: 2017-03-17 18:55 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Possible fix to the requirement that a Application message have a defined structure. (2.81 KB, patch)
2015-03-24 06:13 UTC, Diane Trout
committed Details | Review
FIx build failure in tests (1.51 KB, patch)
2017-03-17 17:42 UTC, Diane Trout
none Details | Review

Description Diane Trout 2015-03-21 20:39:15 UTC
gst_message_new_application fails with the following error when passed a NULL structure, and as a result returns a Null message.

GStreamer-CRITICAL **: gst_message_new_application: assertion 'structure != NULL' failed
    
QGst provided a default null structure argument ApplicationMessagePtr::create
 which was then eventually passed to gst_message_new_application triggering the error.
    
I modified the test to defines a meaningless structure for the refpointer test and removes the default to make sure that any code using this message defines a structure.
Comment 1 Diane Trout 2015-03-24 06:13:11 UTC
Created attachment 300179 [details] [review]
Possible fix to the requirement that a Application message have a defined structure.

The other possibility would be to create a minimal structure if the developer doesn't provide one.
Comment 2 Tim-Philipp Müller 2016-06-03 20:50:32 UTC
Comment on attachment 300179 [details] [review]
Possible fix to the requirement that a Application message have a defined structure.

This sounds correct to me.

I don't think allowing a NULL struct makes much sense, that's not how the API is supposed to be used. The minimum is a struct with just a name, it doesn't need to have any fields.
Comment 3 Sebastian Dröge (slomo) 2016-11-01 18:52:49 UTC
commit 0384481b2f670b3db1a147a1ac0c5ea24c66554e
Author: Diane Trout <diane@ghic.org>
Date:   Sat Mar 21 13:08:29 2015 -0700

    gst_message_new_application fails when passed a NULL structure
    
    QGst provided a default null structure argument ApplicationMessagePtr::create
    gst_message_new_application then failed with the error:
    GStreamer-CRITICAL **: gst_message_new_application: assertion 'structure != NULL' failed
    
    This defines a meaningless structure for the refpointer test and removes
    the default to make sure a structure is provided.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=746584
Comment 4 Diane Trout 2017-03-17 17:42:57 UTC
Created attachment 348196 [details] [review]
FIx build failure in tests

The previous patch introduced a source incompatibility. This fixes it so the package builds again.
Comment 5 Diane Trout 2017-03-17 18:55:49 UTC
commit 393ddb4595da77eedc69bcef1319cdd4cb49701b
Author: Diane Trout <diane@ghic.org>
Date:   Fri Mar 17 10:37:26 2017 -0700

    Set default empty structure on Application and Element MesssagePtr
    
    Fix for the fix in Bug 746584.
    
    The fix that was committed causes one test to not build.
    
    At some point it was pointed out I shouldn't arbitrarily break source
    compatibility, so this fixes the build error and makes code written
    before commit 0384481b2f670b3db1a147a1ac0c5ea24c66554e work