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
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
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
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
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
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
Sebastian Dröge
8db570f48c
multiqueue: Make assignment of queue IDs and pad names threadsafe
...
Also add a test for naming pads by the caller and return NULL
when requesting an already existing pad.
2011-03-30 10:52:36 +02:00
Andreas Frisch
5368406a57
multiqueue: Set the single queue ID to the ID of the requested pad if one was given by the caller
2011-03-30 10:18:54 +02:00
Sebastian Dröge
b8ea24d466
element: Fix sanity checks for request pad templates without %
2011-03-29 16:22:46 +02:00
Sebastian Dröge
cb3f09a719
element: Add some more sanity checks to the pad name checking of request pads in all cases
...
Especially check if a pad with that name already exists.
2011-03-29 11:57:58 +02:00
Sebastian Dröge
c9238f6f56
element: Check %u too when trying to find a pad template for a request pad
2011-03-29 11:52:06 +02:00
Fraxinas
86bbc85ab1
multiqueue: Fix arbitrary sink + source pad naming
...
Use the string provided by the caller for the sinkpad name
if possible. Note that all sanity checking for this name
is already done in GstElement.
Fixes Bug #645931
2011-03-29 11:31:03 +02:00
Sebastian Dröge
b6caaf4ead
funnel: Add some more documentation about the behaviour of funnel
2011-03-29 11:20:06 +02:00
Sebastian Dröge
a7b451cc13
funnel: Send a newsegment event after flush-stop
2011-03-29 11:20:06 +02:00
Sebastian Dröge
acb8203e62
funnel: Some random cleanup
2011-03-29 11:20:06 +02:00
Sebastian Dröge
9c9f619f6b
funnel: Use a GstPad subclass for the sinkpads instead of using the pad's element private data
2011-03-29 11:20:06 +02:00
Sebastian Dröge
565efa30ea
funnel: Integrate into the build system and rename the types
2011-03-29 11:20:05 +02:00
Sebastian Dröge
e5a857e78a
funnel: Import funnel element from farsight2
2011-03-29 11:20:05 +02:00
Arun Raghavan
bae67f116c
basesrc: Return FALSE if we don't handle an event
...
basesrc's default event handler returns TRUE regardless of whether the
event is handled or not. This fixes the handler to conform with the
expected behaviour (which is to only return TRUE when the event has
actually benn handled). gst_bin_do_latency_func() depended on this
(incorrect) behaviour, and is now modified as well.
(Remaining 1-liner change in gstbasesrc.c is to keep gst-indent happy)
2011-03-28 21:48:23 +05:30
Sebastian Dröge
33c86b93dd
Automatic update of common submodule
...
From 193b717 to 1ccbe09
2011-03-25 22:08:41 +01:00
Stefan Kost
18db998189
Automatic update of common submodule
...
From b77e2bf to 193b717
2011-03-25 14:55:39 +02:00