Commit graph

11803 commits

Author SHA1 Message Date
Sebastian Dröge
6d97652903 multiqueue: Add another check for the flushing flag after taking the lock
This prevents another potential deadlock when flushing the pad
at exactly the right time.
2011-04-08 09:15:56 +02:00
Sebastian Dröge
80eb160e0f bus: Immediately drop messages after calling the sync handler if this is a synchronous bus
Otherwise we might wait forever for the message to be popped from
the queue if a sync handler returned GST_BUS_ASYNC.

https://bugzilla.gnome.org/show_bug.cgi?id=647005
2011-04-08 09:15:56 +02:00
Sebastian Dröge
c41b0ade28 bus: Use a construct-only property to distinguish between child buses and normal buses
This allows to only create the socketpair when it is really required instead
of always creating it and immediately destroying it again for child buses.

https://bugzilla.gnome.org/show_bug.cgi?id=647005
2011-04-08 09:15:56 +02:00
Tim-Philipp Müller
5c75330fea tests: add some basic unit tests for queue2 2011-04-07 20:50:04 +01:00
Tim-Philipp Müller
12249e99c2 queue2: fix buffer leak on eos when using the ring buffer 2011-04-07 20:50:04 +01:00
Idar Tollefsen
46a786cee6 queue2: Fixes memory leak on out_flushing error in gst_queue2_create_read.
https://bugzilla.gnome.org/show_bug.cgi?id=646972
2011-04-07 20:50:04 +01:00
Tim-Philipp Müller
419d117851 queue2: fix minor memory leak 2011-04-07 20:50:04 +01:00
Tim-Philipp Müller
01d016e720 funnel: minor element description fix 2011-04-07 20:50:04 +01:00
Wim Taymans
5077630a99 Merge branch 'master' into 0.11 2011-04-07 16:13:56 +02:00
Wim Taymans
a5e1ec0edc memory: add NO_SHARE flag to memory
Add a NO_SHARE flag to memory to indicate that it should not be shared
between buffers.
2011-04-07 16:02:43 +02:00
Stefan Kost
7bb40c3ada docs: remove file as we have docs/design/part-missing-plugins.txt 2011-04-07 16:09:49 +03:00
Sebastian Dröge
7945821f92 basesrc: Handle tag and custom downstream events the same
Especially drop tag events when flushing to not send them over
and over again.

Should've been in the last commit already but I forgot to call
git rebase --continue...
2011-04-07 10:48:04 +02:00
Sebastian Dröge
c7c3e46b08 bla 2011-04-07 10:40:16 +02:00
Sebastian Dröge
1d9cd86af6 basesrc: Send syncronized custom downstream/both events downstream from the streaming thread
Instead of just silently dropping them. The same was done for tag events
before already.

Fixes bug #635718.
2011-04-07 10:29:41 +02:00
Wim Taymans
a13740db3f memory: don't follow the parent in the fallback share 2011-04-06 19:19:55 +02:00
Wim Taymans
f332b700d5 buffer: make memory writable in _peek
Make the memory writable when we are asked to _peek with MAP_WRITE.
Improve debugging of miniobject.
2011-04-06 19:00:28 +02:00
Wim Taymans
20ba453244 miniobject: fix debug 2011-04-06 16:37:40 +02:00
Sebastian Dröge
08b98cc7e9 Merge branch 'master' into 0.11 2011-04-06 14:20:59 +02:00
Sebastian Dröge
874d60e589 bus: Add private API to set a GstBus in child mode
This is used by GstBin to create a child bus without
a socketpair because child buses will always work
synchronous. Otherwise too many sockets could be
created and the limit of file descriptors for the
process could be reached.

Fixes bug #646624.
2011-04-06 14:18:35 +02:00
Sebastian Dröge
79370d4b17 Revert "bus: Only create the signalling socket pair when required"
This reverts commit 4bf8f1524f.
2011-04-06 14:12:26 +02:00
Sebastian Dröge
2cb3e52351 Revert "bus: Check if pending messages are in the queue"
This reverts commit bd1c400114.
2011-04-06 14:12:26 +02:00
Tim-Philipp Müller
6a5f8a1b2d checks: make tests_many_bins in bin unit test a bit faster
Not doing expensive checks when linking elements makes things
much faster.
2011-04-06 11:41:14 +01:00
Tim-Philipp Müller
da5d6712a2 checks: add some queues to test_many_bins unit test
To limit the number of calls in a row per thread.
2011-04-06 11:30:18 +01:00
Sebastian Dröge
bd1c400114 bus: Check if pending messages are in the queue
We can't rely completely on the poll fd because the fd might be
created after messages were posted to the bus.
2011-04-06 12:03:18 +02:00
Sebastian Dröge
ec0de993c6 value: GstDate/GDate has a abbreviation now 2011-04-06 11:45:27 +02:00
Tim-Philipp Müller
d7ff4ee6cb checks: add GstBin unit test that creates a lot of bins
Currently fails (in normal circumstances) because we create a
socket pair for each bin's bus and exhaust the number of available
file descriptors.

https://bugzilla.gnome.org/show_bug.cgi?id=646624
2011-04-05 16:30:59 +02:00
Sebastian Dröge
4bf8f1524f bus: Only create the signalling socket pair when required
Otherwise a new one would be created for every single bus and
the process could easily run out of file descriptors.

Fixes bug #646624.
2011-04-05 16:30:55 +02:00
Sebastian Dröge
5860734aaf structure: Add date as a type abbreviation of GDate
See bug #646696.
2011-04-05 14:37:55 +02:00
Stefan Kost
95737e2811 Automatic update of common submodule
From 1ccbe09 to c3cafe1
2011-04-04 15:56:30 +03:00
Wim Taymans
8bcaf95662 Merge branch 'master' into 0.11 2011-04-04 11:17:28 +02:00
Andoni Morales Alastruey
7c6d9c2725 gstpoll: retry reading the control socket to release properly all wakeups
if set->control_pending is set to 0 but we didn't not succed reading
the control socket, future calls to gst_poll_wait() will be awaiken
by the control socket which will not be released properly because
set->control_pending is already 0, causing an infinite loop.
2011-04-04 11:05:45 +02:00
Sebastian Dröge
eba33c1de1 structure: Don't allow invalid GDates in all structures and don't allow NULL GDates in taglists
Some code (e.g. gstvorbistag.c) assumes non-NULL GDates in taglists and
explodes otherwise and NULL or invalid GDates don't make much sense anyway.
2011-04-04 10:18:14 +02:00
Thomas Kristensen
d0d27e83fe poll: don't call WSAWaitForMultipleEvents with no events
Fixes error caught by Microsoft Application Verifier.
2011-04-04 09:23:57 +02:00
Tim-Philipp Müller
e1ac508cab docs: add pointer to part-seeking.txt design docs to event seek flags docs 2011-04-03 16:18:54 +01:00
Tim-Philipp Müller
439bbf1fde checks: ignore new funnel unit test binary 2011-04-03 16:18:14 +01:00
Bastien Nocera
08e189badb utils: Avoid using "type" as name for a variable and a macro argument in GST_BOILERPLATE
This caused "re-declaration" problems.
./clutter-gst-video-sink.c: In function ‘clutter_gst_video_sink_init_interfaces’:
./clutter-gst-video-sink.c:231:1: warning: declaration of ‘ClutterGstVideoSink’ shadows a global declaration [-Wshadow]
./clutter-gst-video-sink.h:64:44: warning: shadowed declaration is here [-Wshadow]

https://bugzilla.gnome.org/show_bug.cgi?id=646531
2011-04-02 15:12:46 +01:00
Sebastian Dröge
38c07bac1d element: When requesting an existing pad print a g_critical() instead of using an assertion
Some applications are requesting the same pad name multiple times
and the behaviour is undefined and different from element to element
but we don't want to break applications that work just fine.

In 0.11 this check should be an assertion again, although elements
have to do manual checking if the pad already exists again because
it can't be done in a threadsafe way here.
2011-04-01 13:58:43 +02:00
Sebastian Dröge
9f3e48b55b element: Use gint64/guint64 string parsing functions
And check that the requested pad names are inside the valid
gint/guint range.
2011-04-01 13:58:43 +02:00
Josep Torra
c40dba242c element: strto[u]l() returns a g[u]long 2011-04-01 13:58:43 +02:00
Wim Taymans
4686e124c8 Merge branch 'master' into 0.11 2011-04-01 10:47:48 +02:00
Wim Taymans
f6a5b168b2 docs: update porting guide with bufferlist changes 2011-04-01 10:46:06 +02:00
Tim-Philipp Müller
0221f842af design docs: document expected behaviour for ACCURATE and KEY_UNIT seek flags 2011-03-31 19:27:30 +01:00
Wim Taymans
d1a7d54cb5 bytewriter: don't add NULL data 2011-03-31 18:39:57 +02:00
Wim Taymans
fdd6433757 Merge branch 'master' into 0.11
Conflicts:
	tests/check/gst/struct_x86_64.h
2011-03-31 17:55:22 +02:00
Wim Taymans
468ec5bc40 bufferlist: simplify bufferlists
We now have multiple memory blocks as part of the buffers and we can therefore
reduce the bufferlist to a simple array of buffers.
2011-03-31 17:51:02 +02:00
Sebastian Dröge
f42f2240d0 gstabi: Add some new structures for x86-64 2011-03-31 10:53:03 +02:00
Sebastian Dröge
2714587a96 libsabi: Add lots of new structures for x86-64 2011-03-31 10:46:40 +02:00
Wim Taymans
34da2a68f9 docs: update porting doc 2011-03-31 10:33:49 +02:00
Wim Taymans
e8123bed46 funnel: fix for API change 2011-03-30 20:05:26 +02:00
Wim Taymans
7a62d32a07 Merge branch 'master' into 0.11-fdo
Conflicts:
	docs/plugins/gstreamer-plugins.hierarchy
	gst/gstelement.c
2011-03-30 19:58:52 +02:00