Merge branch 'master' into 0.11

Conflicts:
	gst/gstcaps.c
	gst/gstpad.c
	libs/gst/base/gstbasesink.c
	libs/gst/base/gstbasesink.h
	libs/gst/base/gstbasetransform.c
This commit is contained in:
Edward Hervey 2011-09-23 13:09:25 +02:00
commit 10e7159cf8
7 changed files with 45 additions and 98 deletions

View file

@ -208,7 +208,7 @@ gst_caps_new_empty (void)
gst_caps_init (caps, sizeof (GstCaps)); gst_caps_init (caps, sizeof (GstCaps));
#ifdef DEBUG_REFCOUNT #ifdef DEBUG_REFCOUNT
GST_CAT_LOG (GST_CAT_CAPS, "created caps %p", caps); GST_CAT_TRACE (GST_CAT_CAPS, "created caps %p", caps);
#endif #endif
return caps; return caps;
@ -362,7 +362,7 @@ gst_static_caps_get (GstStaticCaps * static_caps)
if (G_UNLIKELY (string == NULL)) if (G_UNLIKELY (string == NULL))
goto no_string; goto no_string;
GST_CAT_LOG (GST_CAT_CAPS, "creating %p", static_caps); GST_CAT_TRACE (GST_CAT_CAPS, "creating %p", static_caps);
/* we construct the caps on the stack, then copy over the struct into our /* we construct the caps on the stack, then copy over the struct into our
* real caps, refcount last. We do this because we must leave the refcount * real caps, refcount last. We do this because we must leave the refcount
@ -379,7 +379,7 @@ gst_static_caps_get (GstStaticCaps * static_caps)
GST_CAPS_FLAGS (caps) = GST_CAPS_FLAGS (&temp); GST_CAPS_FLAGS (caps) = GST_CAPS_FLAGS (&temp);
caps->priv = GST_CAPS_ARRAY (&temp); caps->priv = GST_CAPS_ARRAY (&temp);
GST_CAT_LOG (GST_CAT_CAPS, "created %p", static_caps); GST_CAT_TRACE (GST_CAT_CAPS, "created %p", static_caps);
done: done:
G_UNLOCK (static_caps_lock); G_UNLOCK (static_caps_lock);
} }
@ -1938,6 +1938,6 @@ gst_caps_transform_to_string (const GValue * src_value, GValue * dest_value)
g_return_if_fail (G_VALUE_HOLDS (dest_value, G_TYPE_STRING) g_return_if_fail (G_VALUE_HOLDS (dest_value, G_TYPE_STRING)
|| G_VALUE_HOLDS (dest_value, G_TYPE_POINTER)); || G_VALUE_HOLDS (dest_value, G_TYPE_POINTER));
dest_value->data[0].v_pointer = g_value_take_string (dest_value,
gst_caps_to_string (src_value->data[0].v_pointer); gst_caps_to_string (gst_value_get_caps (src_value)));
} }

View file

@ -3595,8 +3595,9 @@ gst_pad_chain_data_unchecked (GstPad * pad, GstProbeType type, void *data)
goto no_function; goto no_function;
GST_CAT_LOG_OBJECT (GST_CAT_SCHEDULING, pad, GST_CAT_LOG_OBJECT (GST_CAT_SCHEDULING, pad,
"calling chainfunction &%s with buffer %p", "calling chainfunction &%s with buffer %p, ts %" GST_TIME_FORMAT,
GST_DEBUG_FUNCPTR_NAME (chainfunc), data); GST_DEBUG_FUNCPTR_NAME (chainfunc),
GST_BUFFER (data), GST_TIME_ARGS (GST_BUFFER_TIMESTAMP (data)));
ret = chainfunc (pad, GST_BUFFER_CAST (data)); ret = chainfunc (pad, GST_BUFFER_CAST (data));

View file

@ -135,6 +135,7 @@ struct _GstBaseSink {
* correct moment if the #GstBaseSink has been set to sync to the clock. * correct moment if the #GstBaseSink has been set to sync to the clock.
* @render_list: Same as @render but used whith buffer lists instead of * @render_list: Same as @render but used whith buffer lists instead of
* buffers. Since: 0.10.24 * buffers. Since: 0.10.24
* @query: perform a #GstQuery on the element. Since: 0.10.36
* *
* Subclasses can override any of the available virtual methods or not, as * Subclasses can override any of the available virtual methods or not, as
* needed. At the minimum, the @render method should be overridden to * needed. At the minimum, the @render method should be overridden to

View file

@ -335,6 +335,7 @@ static gboolean default_copy_metadata (GstBaseTransform * trans,
/* static guint gst_base_transform_signals[LAST_SIGNAL] = { 0 }; */ /* static guint gst_base_transform_signals[LAST_SIGNAL] = { 0 }; */
static void static void
gst_base_transform_finalize (GObject * object) gst_base_transform_finalize (GObject * object)
{ {
@ -2062,6 +2063,7 @@ gst_base_transform_chain (GstPad * pad, GstBuffer * buffer)
trans->priv->discont = FALSE; trans->priv->discont = FALSE;
} }
trans->priv->processed++; trans->priv->processed++;
ret = gst_pad_push (trans->srcpad, outbuf); ret = gst_pad_push (trans->srcpad, outbuf);
} else { } else {
gst_buffer_unref (outbuf); gst_buffer_unref (outbuf);

View file

@ -566,7 +566,7 @@ static GstWaveformImplementation *waveforms[] = {
&waveform_triangle &waveform_triangle
}; };
static guint num_waveforms = G_N_ELEMENTS (waveforms); static const guint num_waveforms = G_N_ELEMENTS (waveforms);
enum enum
{ {
@ -649,7 +649,7 @@ gst_lfo_control_source_set_waveform (GstLFOControlSource * self,
GstControlSource *csource = GST_CONTROL_SOURCE (self); GstControlSource *csource = GST_CONTROL_SOURCE (self);
gboolean ret = TRUE; gboolean ret = TRUE;
if (waveform >= num_waveforms || waveform < 0) { if (waveform >= num_waveforms || (int) waveform < 0) {
GST_WARNING ("waveform %d invalid or not implemented yet", waveform); GST_WARNING ("waveform %d invalid or not implemented yet", waveform);
return FALSE; return FALSE;
} }

View file

@ -1,89 +0,0 @@
#!/bin/bash
# gstreamer auto-builder
# 0.1.0
# thomas@apestaart.org
# check out fresh gstreamer cvs code anonymously, configure, build
# FIXME :
# * check out source twice, compare, to make sure we don't get code
# in between commits
# * add rpm building if allowed
# * maybe change dir where stuff gets built ?
BR=/tmp # build root
export DISPLAY=:0.0 # gtk-scandoc needs an X server
# delete logs
rm -rf $BR/*.log
echo -n "+ Starting on "
date
echo -n "+ "
uname -a
# delete gstreamer dir if it exists
if test -e $BR/gstreamer
then
echo "+ Deleting $BR/gstreamer"
chmod u+rwx -R /tmp/gstreamer
rm -rf $BR/gstreamer
fi
cd $BR
# check out
echo "+ Checking out source code"
cvs -z3 -d:pserver:anonymous@cvs.gstreamer.sourceforge.net:/cvsroot/gstreamer co gstreamer > cvs.log 2>&1
# do your thing
cd gstreamer
# autogen
echo "+ Running ./autogen.sh"
./autogen.sh > ../autogen.log 2>&1
if test $? -ne 0
then
echo "- Problem while running autogen.sh"
echo "- Dumping end of log ..."
echo
tail -n 20 ../autogen.log
exit
fi
echo "+ Running ./configure --enable-docs-build=no"
./configure --enable-docs-build=no > ../configure.log 2>&1
if test $? -ne 0
then
echo "- Problem while running configure"
echo "- Dumping end of log ..."
echo
tail -n 20 ../configure.log
exit
fi
# make
echo "+ Running make"
make > ../make.log 2>&1
if test $? -ne 0
then
echo "- Problem while running make"
echo "- Dumping end of log ..."
echo
grep -v "pasting would not give a valid" ../make.log > ../make.scrubbed.log
tail -n 20 ../make.scrubbed.log
exit
fi
echo "+ Running BUILD_DOCS= make distcheck"
BUILD_DOCS= make distcheck > ../makedistcheck.log 2>&1
if test $? -ne 0
then
echo "- Problem while running make distcheck"
echo "- Dumping end of log ..."
echo
tail -n 20 ../makedistcheck.log
exit
fi
echo -n "+ Ending successful build cycle on "
date

View file

@ -390,6 +390,34 @@ GST_START_TEST (test_uri_interface)
GST_END_TEST; GST_END_TEST;
static void
check_uri_for_uri (GstElement * e, const gchar * in_uri, const gchar * uri)
{
GstQuery *query;
gchar *query_uri = NULL;
gst_uri_handler_set_uri (GST_URI_HANDLER (e), in_uri);
query = gst_query_new_uri ();
fail_unless (gst_element_query (e, query));
gst_query_parse_uri (query, &query_uri);
gst_query_unref (query);
if (uri != NULL) {
fail_unless_equals_string (query_uri, uri);
} else {
gchar *fn;
fail_unless (gst_uri_is_valid (query_uri));
fn = g_filename_from_uri (query_uri, NULL, NULL);
fail_unless (g_path_is_absolute (fn));
fail_unless (fn != NULL);
g_free (fn);
}
g_free (query_uri);
}
static void static void
check_uri_for_location (GstElement * e, const gchar * location, check_uri_for_location (GstElement * e, const gchar * location,
const gchar * uri) const gchar * uri)
@ -446,6 +474,10 @@ GST_START_TEST (test_uri_query)
/* make sure non-ASCII characters are escaped properly (U+00F6 here) */ /* make sure non-ASCII characters are escaped properly (U+00F6 here) */
check_uri_for_location (src, "/i/./d\303\266/not/../exist", check_uri_for_location (src, "/i/./d\303\266/not/../exist",
"file:///i/d%C3%B6/exist"); "file:///i/d%C3%B6/exist");
/* let's see what happens if we set a malformed URI with ISO-8859-1 chars,
* i.e. one that the input characters haven't been escaped properly. We
* should get back a properly escaped URI */
check_uri_for_uri (src, "file:///M\366t\366r", "file:///M%F6t%F6r");
} }
#endif #endif