projects
/
platform
/
upstream
/
gstreamer.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
4e32ac8
)
buffer: implement COPY_MERGE
author
Wim Taymans
<wim.taymans@collabora.co.uk>
Tue, 29 Mar 2011 15:17:46 +0000
(17:17 +0200)
committer
Wim Taymans
<wim.taymans@collabora.co.uk>
Tue, 29 Mar 2011 15:17:46 +0000
(17:17 +0200)
gst/gstbuffer.c
patch
|
blob
|
history
diff --git
a/gst/gstbuffer.c
b/gst/gstbuffer.c
index
e3ce594
..
8faadaa
100644
(file)
--- a/
gst/gstbuffer.c
+++ b/
gst/gstbuffer.c
@@
-169,6
+169,9
@@
_span_memory (GstBuffer * buffer, gsize offset, gsize size)
/* not enough room, span buffers */
mem[0] = GST_BUFFER_MEM_ARRAY (buffer);
len[0] = GST_BUFFER_MEM_LEN (buffer);
+ if (len[0] == 1)
+ return;
+
span = _gst_buffer_arr_span (mem, len, 1, offset, size);
/* unref old buffers */
@@
-324,6
+327,9
@@
gst_buffer_copy_into (GstBuffer * dest, GstBuffer * src,
left -= tocopy;
}
}
+ if (flags & GST_BUFFER_COPY_MERGE) {
+ _span_memory (dest, 0, size);
+ }
}
for (walk = GST_BUFFER_META (src); walk; walk = walk->next) {