From 4738e5cc695eaa459b4a563bcb6c709fa02ec207 Mon Sep 17 00:00:00 2001 From: trav90 Date: Mon, 28 Mar 2016 12:13:13 -0500 Subject: [PATCH] Don't leak temporary GStreamer caps --- dom/media/gstreamer/GStreamerFormatHelper.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/dom/media/gstreamer/GStreamerFormatHelper.cpp b/dom/media/gstreamer/GStreamerFormatHelper.cpp index ebd12c233c..0abb570f95 100644 --- a/dom/media/gstreamer/GStreamerFormatHelper.cpp +++ b/dom/media/gstreamer/GStreamerFormatHelper.cpp @@ -279,7 +279,11 @@ static bool SupportsCaps(GstElementFactory *aFactory, GstCaps *aCaps) continue; } - if (gst_caps_can_intersect(gst_static_caps_get(&templ->static_caps), aCaps)) { + bool supported = gst_caps_can_intersect(caps, aCaps); + + gst_caps_unref(caps); + + if (supported) { return true; } } @@ -307,11 +311,11 @@ bool GStreamerFormatHelper::HaveElementsToProcessCaps(GstCaps* aCaps) { } } + gst_caps_unref(caps); + if (!found) { return false; } - - gst_caps_unref(caps); } return true;