chromaprint: Missing unmap buffer in transform_ip

When no samples have to be processed, transform_ip exits early, but
the buffer it uses was not properly unmapped.

https://bugzilla.gnome.org/show_bug.cgi?id=685159
This commit is contained in:
Christophe Fergeau 2012-09-30 20:52:30 +02:00 committed by Tim-Philipp Müller
parent 3c1a1dfec5
commit 5e544c1556

View file

@ -209,7 +209,7 @@ gst_chromaprint_transform_ip (GstBaseTransform * trans, GstBuffer * buf)
nsamples = map_info.size / (channels * 2);
if (nsamples == 0)
return GST_FLOW_OK;
goto end;
if (chromaprint->nsamples == 0) {
chromaprint_start (chromaprint->context, rate, channels);
@ -225,6 +225,7 @@ gst_chromaprint_transform_ip (GstBaseTransform * trans, GstBuffer * buf)
gst_chromaprint_create_fingerprint (chromaprint);
}
end:
gst_buffer_unmap (buf, &map_info);
return GST_FLOW_OK;