Skip to content

gst: anticipate GQuark to GstIdStr lifetime changes

GStreamer fixes a memory leak due to GQuarks by switching to GstIdStr. The consequence is that strings previously backed by a GQuark returned by a function will now get their lifetime bound to that of its owner, while the GQuark version ensured static lifetime.

Because some functions return a string with the assumption that they are static and because we can't alter the API for existing versions of the bindings, this MR temporarily forces affected strings as GQuarks, thus gaining static lifetime regardless of the GStreamer version actually being used.

For newer versions of the bindings, the API will be fixed and GQuarks will be removed in favor a leakless solution.

See: gstreamer!7432 (merged)

Merge request reports