Commit graph

29 commits

Author SHA1 Message Date
Ronald S. Bultje
d8d03b6b98 docs/pwg/advanced-types.xml: Fix description for buffer-frames=0.
Original commit message from CVS:
* docs/pwg/advanced-types.xml:
Fix description for buffer-frames=0.
* docs/gst/tmpl/gstbin.sgml:
* gst/gstbin.c: (gst_bin_child_state_change_func),
(gst_bin_change_state), (gst_bin_change_state_norecurse):
* gst/gstbin.h:
* testsuite/threads/Makefile.am:
* testsuite/threads/threadi.c: (cb_timeout), (cb_quit), (cb_eos),
(cb_state), (cb_play), (main):
Fix non-recursive state changes to *really* change the state
of the object, and not just call parent_class->state_change.
Fix a lot of lockups caused by this. Fixes #132775. Add test
for the problem. Also enable test to show #142588 (fixed).
* gst/gstthread.c: (gst_thread_change_state),
(gst_thread_child_state_change):
Don't exit the thread if we go to NULL and are inside thread
context. Instead, return control to the main thread context
and exit from there.
* gst/gstelement.c: (gst_element_disable_threadsafe_properties):
Don't unset virtual functions, since those may still be used.
That's not necessarily correct, but suffices for now.
* configure.ac:
* testsuite/Makefile.am:
* testsuite/pad/Makefile.am:
* testsuite/pad/chainnopull.c: (gst_test_sink_class_init),
(gst_test_sink_base_init), (gst_test_sink_chain),
(gst_test_sink_init), (main):
* testsuite/pad/getnopush.c: (gst_test_src_class_init),
(gst_test_src_base_init), (gst_test_src_get), (gst_test_src_init),
(main):
* testsuite/pad/link.c: (gst_test_element_class_init),
(gst_test_element_base_init), (gst_test_src_get),
(gst_test_src_loop), (gst_test_src_init), (gst_test_filter_chain),
(gst_test_filter_loop), (gst_test_filter_init),
(gst_test_sink_chain), (gst_test_sink_loop), (gst_test_sink_init),
(cb_error), (main):
Add tests to show #150546. Pass, but should fail (currently
disabled from the testsuite).
* gst/gstscheduler.c: (gst_scheduler_dispose):
Dereference child schedulers on dispose (#94464).
* testsuite/bytestream/filepadsink.c: (gst_fp_sink_init):
Fix typo.
* testsuite/threads/thread.c: (main):
Add more debug.
2005-01-31 15:51:19 +00:00
Thomas Vander Stichele
c16b2dd49c ... and this test also passes now
Original commit message from CVS:
... and this test also passes now
2004-12-21 12:25:44 +00:00
Wim Taymans
522f5f7231 Added testcase for failing bin iterate function due to glib thread-unsafeness.
Original commit message from CVS:
Added testcase for failing bin iterate function due to glib thread-unsafeness.
2004-11-29 17:29:37 +00:00
Wim Taymans
4c20dfd33d testsuite/threads/: Added a bunch of testcases that show threadsafety bugs in glib.
Original commit message from CVS:
* testsuite/threads/Makefile.am:
* testsuite/threads/signals.c: (gst_test_get_type),
(gst_test_class_init), (gst_test_init), (gst_test_dispose),
(gst_test_set_property), (gst_test_get_property),
(gst_test_do_signal1), (signal2_handler), (gst_test_do_signal2),
(gst_test_do_prop), (run_thread), (main):
Added a bunch of testcases that show threadsafety bugs in glib.
2004-11-29 14:27:04 +00:00
Wim Taymans
7d5e71663c testsuite/threads/: Added testsuite to show bug #159566
Original commit message from CVS:
* testsuite/threads/159566.c: (object_deep_notify), (main):
* testsuite/threads/Makefile.am:
Added testsuite to show bug #159566
2004-11-26 18:29:06 +00:00
Thomas Vander Stichele
bb22738d21 disable the tests that still fail on SMP
Original commit message from CVS:
disable the tests that still fail on SMP
2004-09-09 19:09:49 +00:00
Thomas Vander Stichele
ecb3dc6865 unbreak testsuite
Original commit message from CVS:
unbreak testsuite
2004-09-08 23:37:07 +00:00
Wim Taymans
5905655ead Reworked the GstThread implementation, make more operations threadsafe and more reliable.
Original commit message from CVS:
* gst/gstthread.c: (gst_thread_dispose), (gst_thread_sync),
(gst_thread_change_state), (gst_thread_child_state_change),
(gst_thread_main_loop):
* gst/gstthread.h:
* testsuite/threads/Makefile.am:
* testsuite/threads/queue.c:
* testsuite/threads/thread.c: (construct_pipeline), (change_state),
(main):
* testsuite/threads/threadc.c: (construct_pipeline):
* testsuite/threads/threadd.c: (main):
* testsuite/threads/threade.c: (main):
* testsuite/threads/threadf.c:
Reworked the GstThread implementation, make more operations
threadsafe and more reliable.
Moved testcases from the failing to the working list.
2004-09-06 15:57:11 +00:00
Thomas Vander Stichele
cc62cef6fa fold enumcaps into caps/; clean up Makefile.am files
Original commit message from CVS:
fold enumcaps into caps/; clean up Makefile.am files
2004-07-28 11:43:04 +00:00
Benjamin Otte
28bf20507e gst/gstbin.c: make state changes work correctly and reentrant (so removing elements from bins during state changes of...
Original commit message from CVS:
* gst/gstbin.c: (gst_bin_get_type), (gst_bin_class_init),
(gst_bin_fix_state), (gst_bin_add_func), (gst_bin_remove_func),
(gst_bin_child_state_change_func), (set_kid_state_func),
(gst_bin_set_state), (gst_bin_change_state_norecurse):
make state changes work correctly and reentrant (so removing
elements from bins during state changes of bins doesn't cause
segfaults or even wrong states)
add debugging category and debugging output to print children states
* gst/gstbin.c: (gst_bin_dispose):
add some assertion checks
* gst/gstbin.h:
* gst/gstbin.c: (gst_bin_sync_children_state):
deprecate this function - it just does gst_bin_set_state (bin,
GST_STATE (bin))
* testsuite/threads/queue.c: (main):
don't use gst_bin_sync_children_state anymore
* testsuite/states/Makefile.am:
* testsuite/states/bin.c:
test that the state changes of bins work as expected
* gst/gstthread.c: (gst_thread_class_init), (gst_thread_set_state):
some adjustments to change states correctly, too
* gst/gstthread.c: (gst_thread_change_state):
don't enable/disable "threadsafe" properties, they're unused and
cause random segfaults
* testsuite/threads/Makefile.am:
the queue check randomly passes now, ignore it
2004-07-21 21:28:58 +00:00
Zaheer Abbas Merali
becad99a95 testsuite/threads/: added test to check if problem when removing all elements from a
Original commit message from CVS:
2004-07-09  Zaheer Abbas Merali  <zaheerabbas at merali dot org>

* testsuite/threads/Makefile.am:
* testsuite/threads/threadg.c:
added test to check if problem when removing all elements from a
GstThread before setting GstThread state to NULL
2004-07-09 14:18:35 +00:00
David Schleef
3547072600 testsuite/Makefile.am: define tests_ignore
Original commit message from CVS:
* testsuite/Makefile.am: define tests_ignore
* testsuite/Rules: Added new tests_ignore, which get compiled,
but not run (generally because they're inconsistent or have
heisenbugs).  Now we can ensure all the .c files compile in
testsuite/.
* testsuite/bins/Makefile.am: define tests_ignore
* testsuite/bytestream/Makefile.am:
* testsuite/caps/Makefile.am:
* testsuite/clock/Makefile.am:
* testsuite/debug/Makefile.am:
* testsuite/debug/global.c: (gst_debug_log_one),
(gst_debug_log_two): Fix compilation problem.
* testsuite/dynparams/Makefile.am:
* testsuite/elements/Makefile.am:
* testsuite/ghostpads/Makefile.am:
* testsuite/indexers/Makefile.am:
* testsuite/parse/Makefile.am:
* testsuite/plugin/Makefile.am:
* testsuite/refcounting/Makefile.am:
* testsuite/refcounting/element_pad.c: (main): Don't return leak
results, because it's not calculated correctly.
* testsuite/refcounting/pad.c: (main): same
* testsuite/states/Makefile.am:
* testsuite/tags/Makefile.am:
* testsuite/threads/Makefile.am:
2004-04-15 04:54:53 +00:00
Benjamin Otte
1e82f617e4 gst/gstclock.*: deprecate old interface and disable functions that aren't in use anymore.
Original commit message from CVS:
2004-01-13  Benjamin Otte  <in7y118@public.uni-hamburg.de>

* gst/gstclock.c: (gst_clock_class_init), (gst_clock_init),
(gst_clock_set_speed), (gst_clock_set_active),
(gst_clock_is_active), (gst_clock_reset),
(gst_clock_handle_discont):
* gst/gstclock.h:
deprecate old interface and disable functions that aren't in use
anymore.
* gst/gstelement.h:
* gst/gstelement.c: (gst_element_get_time), (gst_element_wait),
(gst_element_set_time), (gst_element_adjust_time):
add concept of "element time" and functions to get/set this time.
* gst/gstelement.c: (gst_element_change_state):
update element time correctly.
* gst/gstelement.c: (gst_element_get_compatible_pad_filtered):
This is a debug message, not a g_critical.
* gst/gstpad.c: (gst_pad_event_default):
handle discontinuous events right with element time.
* gst/gstscheduler.c: (gst_scheduler_state_transition):
update to clocking fixes.
set clocks on elements in READY=>PAUSED. The old behaviour caused
a wrong element time on the first element that started playing.
* gst/schedulers/gstbasicscheduler.c:
(gst_basic_scheduler_class_init):
* gst/schedulers/gstoptimalscheduler.c:
(gst_opt_scheduler_class_init):
remove code that just implements the default behaviour.
* gst/elements/gstfakesink.c: (gst_fakesink_chain):
update to use new clocking functions
* testsuite/clock/clock1.c: (gst_clock_debug), (main):
* testsuite/clock/clock2.c: (gst_clock_debug), (main):
update to test new element time.
* gst/autoplug/gstspideridentity.c: (gst_spider_identity_getcaps):
use _get_allowed_caps instead of _get_caps. This catches filtered
caps correctly.
* testsuite/debug/commandline.c:
update for new GST_DEBUG syntax.
* testsuite/threads/Makefile.am:
disable a test that only works sometimes.
2004-01-14 00:46:48 +00:00
Iain Holmes
0676d630e7 threadb and threadc are unexpectedly passing on my system (glibc2.3.1 and linux-2.6.0-test9). Commenting them out bec...
Original commit message from CVS:
threadb and threadc are unexpectedly passing on my system (glibc2.3.1 and linux-2.6.0-test9). Commenting them out because they are expectedly failing on other systems.
2003-11-05 12:45:18 +00:00
David Schleef
9c87c528e7 Massive patch to make 'make check' work properly. Many compilation fixes -- everything should compile now. Some tes...
Original commit message from CVS:
Massive patch to make 'make check' work properly.  Many compilation
fixes -- everything should compile now.  Some tests pass, some
fail; the expected sucess/failure is coded in the Makefile.am's.
gst-register is properly run for both 'make check' and 'make distcheck'.
Much of the common infrastructure is coded in testsuite/Rules.
2003-10-15 01:25:41 +00:00
David Schleef
d4ee10bd79 distcheck fixes. Some tests have been disabled.
Original commit message from CVS:
distcheck fixes.  Some tests have been disabled.
2003-10-09 01:13:21 +00:00
Thomas Vander Stichele
230f5397aa adding simple queue test
Original commit message from CVS:
adding simple queue test
2003-10-03 15:21:49 +00:00
Benjamin Otte
803ce6bf48 GST_DEBUG reorganization containing loads of stuff:
Original commit message from CVS:
GST_DEBUG reorganization
This is a big diff (ca 450k), containing loads of stuff:
- gstinfo.[ch] complete rewrite
- changing of all GST_DEBUG messages to reflect that change
- reorganization of subsystem disabling
- addition of gstconfig.h.in so we can track the disablings
- <gst/gst.h> does not include <unistd.h> and <config.h> anymore
- documentation updated for gstinfo stuff (build the docs yourself to know what changed)
- bugfixes for making of the docs (files from CVS are not deleted anymore
- testsuite for debugging changes in testsuite/debug

expect breakage
2003-06-29 14:05:49 +00:00
Thomas Vander Stichele
6cf83f6d8b applying http://bugzilla.gnome.org/show_bug.cgi?id=110707 patch, should fix testsuite issues
Original commit message from CVS:
applying
http://bugzilla.gnome.org/show_bug.cgi?id=110707
patch, should fix testsuite issues
2003-05-18 22:59:51 +00:00
Thomas Vander Stichele
cc25be4804 various test fixes :)
Original commit message from CVS:
various test fixes :)
2003-01-21 22:11:21 +00:00
Thomas Vander Stichele
bc5a5b19a1 set up thread test environment
Original commit message from CVS:
set up thread test environment
2003-01-05 18:57:26 +00:00
David I. Lehn
c5ee2d3051 use AM_CFLAGS dummy NULL init for vars to deal with warnings
Original commit message from CVS:
use AM_CFLAGS
dummy NULL init for vars to deal with warnings
2002-12-03 21:55:39 +00:00
Thomas Vander Stichele
926f38ba31 adding tests
Original commit message from CVS:
adding tests
2002-11-18 22:54:06 +00:00
Thomas Vander Stichele
852761c9dc threadc still fails
Original commit message from CVS:
threadc still fails
2002-11-14 21:20:47 +00:00
Thomas Vander Stichele
9d804f0b00 cleanups in code fix tests to run and complete if they can move threadb to failing tests since it doesn't work with b...
Original commit message from CVS:
cleanups in code
fix tests to run and complete if they can
move threadb to failing tests since it doesn't work with basicomega
(crashes in the mmap)
2002-11-13 17:06:23 +00:00
David I. Lehn
e00fef2c19 use AM_CFLAGS instead of CFLAGS
Original commit message from CVS:
use AM_CFLAGS instead of CFLAGS
2002-11-02 05:24:27 +00:00
Thomas Vander Stichele
c6b9be0e52 new thread test, not yet active
Original commit message from CVS:
new thread test, not yet active
2002-09-12 19:26:54 +00:00
Thomas Vander Stichele
4200f6ca41 converting this to separate binaries so they can be run as a testsuite
Original commit message from CVS:
converting this to separate binaries so they can be run as a testsuite
2002-09-12 11:56:08 +00:00
Wim Taymans
f6d86c4a98 Added a thread test case.
Original commit message from CVS:
Added a thread test case.
2001-12-05 18:39:20 +00:00