author | Wolfgang Rosenauer <wr@rosenauer.org> |
Thu, 19 Jul 2012 21:22:47 +0200 | |
changeset 509 | 82efe6beba0f |
parent 470 | 983544dc8af4 |
child 512 | bab27818f3a5 |
permissions | -rw-r--r-- |
470
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
1 |
# HG changeset patch |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
2 |
# Parent 305397d1d86aaf3d3da2e9357eea2fdd1888a325 |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
3 |
# User Wolfgang Rosenauer <wr@rosenauer.org> |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
4 |
Bug 761030 - Crash with HTML 5 video with gstreamer enabled (TM: 16) |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
5 |
|
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
6 |
diff --git a/content/media/gstreamer/nsGStreamerReader.cpp b/content/media/gstreamer/nsGStreamerReader.cpp |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
7 |
--- a/content/media/gstreamer/nsGStreamerReader.cpp |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
8 |
+++ b/content/media/gstreamer/nsGStreamerReader.cpp |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
9 |
@@ -447,16 +447,18 @@ bool nsGStreamerReader::DecodeVideoFrame |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
10 |
for(int i = 0; i < 3; i++) { |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
11 |
b.mPlanes[i].mData = data + gst_video_format_get_component_offset(format, i, |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
12 |
width, height); |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
13 |
b.mPlanes[i].mStride = gst_video_format_get_row_stride(format, i, width); |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
14 |
b.mPlanes[i].mHeight = gst_video_format_get_component_height(format, |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
15 |
i, height); |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
16 |
b.mPlanes[i].mWidth = gst_video_format_get_component_width(format, |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
17 |
i, width); |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
18 |
+ b.mPlanes[i].mOffset = 0; |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
19 |
+ b.mPlanes[i].mSkip = 0; |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
20 |
} |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
21 |
|
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
22 |
bool isKeyframe = !GST_BUFFER_FLAG_IS_SET(buffer, |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
23 |
GST_BUFFER_FLAG_DELTA_UNIT); |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
24 |
/* XXX ? */ |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
25 |
PRInt64 offset = 0; |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
26 |
VideoData *video = VideoData::Create(mInfo, |
983544dc8af4
Crash with HTML 5 video with gstreamer enabled (bmo#761030)
Wolfgang Rosenauer <wr@rosenauer.org>
parents:
diff
changeset
|
27 |
mDecoder->GetImageContainer(), |