Commit graph

24 commits

Author SHA1 Message Date
Wim Taymans
c47dc4d853 First THREADED backport attempt, focusing on adding locks and making sure the API is threadsafe. Needs more work. Mor...
Original commit message from CVS:
First THREADED backport attempt, focusing on adding locks and
making sure the API is threadsafe. Needs more work. More docs
follow this week.
2005-03-07 18:27:42 +00:00
Andy Wingo
d6443170cf gst/gsttag.c: Add a tag merge func for pointers. The header was there all along, but the function wasn't. (guile-gstr...
Original commit message from CVS:
2004-07-14  Andy Wingo  <wingo@pobox.com>

* gst/gsttag.c: Add a tag merge func for pointers. The header was
there all along, but the function wasn't. (guile-gstreamer's build
system uses the address of the function -- I wasn't actually
trying to use this.)

2004-07-13  Andy Wingo  <wingo@pobox.com>

* gst/gstpad.c (gst_pad_try_set_caps): Naive link functions (such
as gst_pad_proxy_pad_link) just link to every other pad when they
are called. In the case where the graph has cycles, this will mean
that a call to try_set_caps will recurse. Allow this recursion
and return OK, while we wait for the first try_set_caps to give a
proper return value.
(gst_pad_link_call_link_functions): Since this function is the
only one to set the NEGOTIATING flag on a pad, if the flag is set
it means that the link functions have indirectly recursed. If this
happens, error out to avoid infinite recursion and an eventual
SEGV.
(gst_real_pad_class_init): Remove a crufty GtkObject comment.
(gst_pad_proxy_getcaps): Intersect the result with the template
caps to ensure that the return value is valid.

2004-07-11  Andy Wingo  <wingo@pobox.com>

* gst/gstdata.c (gst_data_is_writable): s/>=/>/. If there is only
one refcount, the calling function is the owner of the buffer.
2004-07-14 15:28:51 +00:00
Benjamin Otte
e242dece5b gst/gstdata.c: whoops, return values were wrong, so writable data was marked as non-writable and vice versa. (fixes #...
Original commit message from CVS:
* gst/gstdata.c: (gst_data_is_writable):
whoops, return values were wrong, so writable data was marked as
non-writable and vice versa. (fixes #143953, spotted by Francis
Labonte)
Shows how rarely we need to copy data ;)
2004-06-20 20:49:32 +00:00
Thomas Vander Stichele
7baa6c18e7 don't mix tabs and spaces
Original commit message from CVS:
don't mix tabs and spaces
2004-03-15 19:27:17 +00:00
Thomas Vander Stichele
a967370df5 gst-indent run on core
Original commit message from CVS:
gst-indent run on core
2004-03-13 15:27:01 +00:00
Johan Dahlin
2db697154b gst/: Use gst_data_copy, instead of ref, since some applications that uses GBoxed routines depends on a function that...
Original commit message from CVS:
* gst/gstbuffer.c (_gst_buffer_initialize):
* gst/gstdata.c (gst_data_get_type):
* gst/gstevent.c (_gst_event_initialize): Use gst_data_copy,
instead of ref, since some applications that uses GBoxed
routines depends on a function that actually returns a copy.
2004-03-01 12:10:16 +00:00
Benjamin Otte
88ba7f4999 gst/gstbuffer.h: remove gst_buffer_free, use gst_data_unref
Original commit message from CVS:
2004-02-27  Benjamin Otte  <otte@gnome.org>

* gst/gstbuffer.h:
remove gst_buffer_free, use gst_data_unref
* gst/gstdata.c: (gst_data_get_type):
use refcounting in GstData GBoxed registration
* gst/gstdata.h:
remove gst_data_free, use gst_data_unref
2004-02-27 21:29:04 +00:00
Johan Dahlin
730dd21ce5 gst/gstdata.c (gst_data_get_type): New function, register
Original commit message from CVS:
* gst/gstdata.c (gst_data_get_type): New function, register
GstData as a GBoxed type.

* gst/gstdata.h (GST_TYPE_DATA): New macro
2004-02-27 17:58:24 +00:00
Andy Wingo
cded585aa2 gst/: Debugging tweaks.
Original commit message from CVS:
2004-02-20  Andy Wingo  <wingo@pobox.com>

* gst/gstbin.c:
* gst/gstbuffer.c:
* gst/gstplugin.c:
* gst/registries/gstxmlregistry.c:
* gst/schedulers/gstoptimalscheduler.c: Debugging tweaks.

* gst/gstelement.c (gst_element_set_scheduler): Debugging fixes.
(gst_element_add_pad): DEBUG->INFO, some fixes.
(gst_element_get_compatible_pad_template): Just see if the
templates' caps intersect, not if one is a strict subset of the
other. This conforms more to what gst_pad_link_intersect() does.
(gst_element_class_add_pad_template): Don't memcpy the pad
template, just ref it.
(gst_element_get_compatible_pad_filtered): Clean up debug messages

* gst/gstpad.c (gst_pad_can_link_filtered): Debug a true result.
(gst_pad_link_filtered): Debug changes.
(gst_pad_link_prepare): New function, consolidated from
can_link_filtered and link_filtered.

* gst/parse/grammar.y (gst_parse_perform_link): Made INFO output
look more like that of the functions in gstelement.c

* gst/gstinfo.c (gst_debug_print_object): Put a space before the
object, and return the empty string if object is NULL.

* gst/parse/parse.l: Remove trailing newlines when calling PRINT.
* gst/parse/grammar.y (YYFPRINTF): Log bison debugging info via
LOG, not DEBUG. We still get flex info on debug.

* gst/registries/gstxmlregistry.c (gst_xml_registry_load): Make
debug string more verbose.
(plugin_times_older_than): DEBUG->LOG.
2004-02-20 13:18:32 +00:00
Julien Moutte
df6a979243 gst/gstdata.c: Adding a categorized debug on data_ref because data_unref has one and i prefer the debug to be symetric.
Original commit message from CVS:
2004-02-09  Julien MOUTTE  <julien@moutte.net>

* gst/gstdata.c: (gst_data_ref): Adding a categorized debug on data_ref
because data_unref has one and i prefer the debug to be symetric.
* gst/gstqueue.c: (gst_queue_locked_flush): Fix a huge memleak. Buffers
were refed when added to the queue and unrefed only once when the queue
was flushed. Now the flush handler unref the buffers two times : first
unref for the ref added when pushing in the queue's tail and second
unref to destroy the flushed buffer.
2004-02-09 09:11:50 +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
Benjamin Otte
b36a2350ba *_is_writeable => *_is_writable (spelling)
Original commit message from CVS:
*_is_writeable => *_is_writable (spelling)
2003-04-16 18:35:57 +00:00
Benjamin Otte
42efbe5648 change *_is_readonly to *_is_writeable. Hope the name stays now...
Original commit message from CVS:
change *_is_readonly to *_is_writeable. Hope the name stays now...
2003-04-15 21:33:08 +00:00
Benjamin Otte
c016763611 API change: rename (currently unused function) gst_(data|buffer)_needs_copy_on_write to gst_(data|buffer)_is_readonly...
Original commit message from CVS:
API change: rename (currently unused function) gst_(data|buffer)_needs_copy_on_write to gst_(data|buffer)_is_readonly - we don't want to confuse even core developers
2003-04-15 18:41:23 +00:00
Wim Taymans
132bab1098 - copy kernel headers (waiting for libatomic..)
Original commit message from CVS:
- copy kernel headers (waiting for libatomic..)
- Make sure the atomic stuff is never seen by the app
- inline atomic stuff for core only, expose non-inlined version to apps.

hoping this one works... please test
2002-12-31 03:21:08 +00:00
Wim Taymans
29e2850eff Documentation updates
Original commit message from CVS:
Documentation updates
2002-12-14 13:02:16 +00:00
Christian Schaller
e6d279fc4d added vishnu's doc patch
Original commit message from CVS:
added vishnu's doc patch
2002-11-28 00:10:38 +00:00
Wim Taymans
b7ee3bebf5 Added g_return_if_fail
Original commit message from CVS:
Added g_return_if_fail
2002-11-22 23:15:14 +00:00
David Schleef
f42d7e6ac8 Added gst_data_needs_copy_on_write()
Original commit message from CVS:
Added gst_data_needs_copy_on_write()
2002-11-19 02:29:18 +00:00
Wim Taymans
c2e64f65da Small cleanups and leak fixes
Original commit message from CVS:
Small cleanups and leak fixes
2002-09-15 13:45:26 +00:00
Thomas Vander Stichele
f3fdcea578 clearer code and debug info
Original commit message from CVS:
clearer code and debug info
2002-08-29 10:29:51 +00:00
Wim Taymans
c2a0080f90 Also handle READONLY buffers in the copy_on_write function
Original commit message from CVS:
Also handle READONLY buffers in the copy_on_write function
2002-07-25 18:47:48 +00:00
Wim Taymans
e9f84e2738 - Documentation updates, renamed some _ methods because gtkdoc didn't want to generate docs for them.
Original commit message from CVS:
- Documentation updates, renamed some _ methods because gtkdoc didn't
want to generate docs for them.
- Add some more events for future use.
2002-07-13 23:12:22 +00:00
Wim Taymans
74b6b732f1 - Added a bunch of fast atomic operations on x86 with C fallbacks
Original commit message from CVS:
- Added a bunch of fast atomic operations on x86 with C fallbacks
- Added the code for refcounting in GstData
- Added a gstmemchunk allocator using atomic operations
2002-07-08 19:12:38 +00:00