diff -r ff06037ec39c -r 0f6539389500 mozilla-gstreamer.patch --- a/mozilla-gstreamer.patch Mon Jul 23 06:33:59 2012 +0200 +++ b/mozilla-gstreamer.patch Wed Jul 25 11:15:27 2012 +0200 @@ -1,14 +1,12 @@ # HG changeset patch -# Parent a9a49c20c491011f981b6c110aadfa6a01a1431e +# Parent e4b87e710b1a5f0bb7db058911bc163b4bf30227 # User Wolfgang Rosenauer -Bug 761030 - Crash with HTML 5 video with gstreamer enabled (TM: 16) - No Bug - use GStreamer _only_ for MP4 (not WebM/OGG) diff --git a/content/html/content/src/nsHTMLMediaElement.cpp b/content/html/content/src/nsHTMLMediaElement.cpp --- a/content/html/content/src/nsHTMLMediaElement.cpp +++ b/content/html/content/src/nsHTMLMediaElement.cpp -@@ -2278,21 +2278,17 @@ nsHTMLMediaElement::CreateDecoder(const +@@ -2277,21 +2277,17 @@ nsHTMLMediaElement::CreateDecoder(const nsRefPtr decoder = new nsRawDecoder(); if (decoder->Init(this)) { return decoder.forget(); @@ -30,7 +28,7 @@ #ifdef MOZ_WAVE if (IsWaveType(aType)) { nsRefPtr decoder = new nsWaveDecoder(); -@@ -2306,21 +2302,17 @@ nsHTMLMediaElement::CreateDecoder(const +@@ -2305,21 +2301,17 @@ nsHTMLMediaElement::CreateDecoder(const nsRefPtr decoder = new nsMediaPluginDecoder(aType); if (decoder->Init(this)) { return decoder.forget(); @@ -52,25 +50,3 @@ #ifdef MOZ_GSTREAMER if (IsH264Type(aType)) { -diff --git a/content/media/gstreamer/nsGStreamerReader.cpp b/content/media/gstreamer/nsGStreamerReader.cpp ---- a/content/media/gstreamer/nsGStreamerReader.cpp -+++ b/content/media/gstreamer/nsGStreamerReader.cpp -@@ -447,16 +447,18 @@ bool nsGStreamerReader::DecodeVideoFrame - for(int i = 0; i < 3; i++) { - b.mPlanes[i].mData = data + gst_video_format_get_component_offset(format, i, - width, height); - b.mPlanes[i].mStride = gst_video_format_get_row_stride(format, i, width); - b.mPlanes[i].mHeight = gst_video_format_get_component_height(format, - i, height); - b.mPlanes[i].mWidth = gst_video_format_get_component_width(format, - i, width); -+ b.mPlanes[i].mOffset = 0; -+ b.mPlanes[i].mSkip = 0; - } - - bool isKeyframe = !GST_BUFFER_FLAG_IS_SET(buffer, - GST_BUFFER_FLAG_DELTA_UNIT); - /* XXX ? */ - PRInt64 offset = 0; - VideoData *video = VideoData::Create(mInfo, - mDecoder->GetImageContainer(),