Merge branch 'master' into 0.11

Conflicts:
	libs/gst/base/gstbasesrc.c
This commit is contained in:
Wim Taymans 2011-07-07 11:13:19 +02:00
commit b171259612
3 changed files with 9 additions and 4 deletions

2
common

@ -1 +1 @@
Subproject commit 69b981f10caa234ad0ff639179d0fda8505bd94b
Subproject commit 605cd9a65ed61505f24b840d3fe8e252be72b151

View file

@ -225,7 +225,7 @@ gst_task_finalize (GObject * object)
static void
gst_task_configure_name (GstTask * task)
{
#ifdef HAVE_SYS_PRCTL_H
#if defined(HAVE_SYS_PRCTL_H) && defined(PR_SET_NAME)
const gchar *name;
gchar thread_name[17] = { 0, };

View file

@ -2139,11 +2139,10 @@ gst_base_src_update_length (GstBaseSrc * src, guint64 offset, guint * length)
}
}
/* keep track of current position and update duration.
/* keep track of current duration.
* segment is in bytes, we checked that above. */
GST_OBJECT_LOCK (src);
src->segment.duration = size;
src->segment.position = offset;
GST_OBJECT_UNLOCK (src);
return TRUE;
@ -2184,6 +2183,12 @@ again:
if (G_UNLIKELY (!gst_base_src_update_length (src, offset, &length)))
goto unexpected_length;
/* track position */
GST_OBJECT_LOCK (src);
if (src->segment.format == GST_FORMAT_BYTES)
gst_segment_set_last_stop (&src->segment, GST_FORMAT_BYTES, offset);
GST_OBJECT_UNLOCK (src);
/* normally we don't count buffers */
if (G_UNLIKELY (src->num_buffers_left >= 0)) {
if (src->num_buffers_left == 0)