Merge tag 'upstream/1.4.2'

Upstream version 1.4.2
diff --git a/ChangeLog b/ChangeLog
index b55e888..b53a15e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,9 +1,182 @@
-=== release 1.4.1 ===
+=== release 1.4.2 ===
 
-2014-08-27  Sebastian Dröge <slomo@coaxion.net>
+2014-09-19  Sebastian Dröge <slomo@coaxion.net>
 
 	* configure.ac:
-	  releasing 1.4.1
+	  releasing 1.4.2
+
+2014-09-19 00:33:58 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* docs/pwg/advanced-tagging.xml:
+	* docs/pwg/intro-basics.xml:
+	  docs: pwg: fix some links to the API docs
+	  https://bugzilla.gnome.org/show_bug.cgi?id=736762
+
+2014-09-17 17:17:10 +0200  Ognyan Tonchev <ognyan@axis.com>
+
+	* plugins/elements/gsttypefindelement.c:
+	  typefindelement: do not leak sticky events in flush_stop
+	  https://bugzilla.gnome.org/show_bug.cgi?id=736813
+
+2014-09-16 13:48:18 +0200  Ognyan Tonchev <ognyan@axis.com>
+
+	* gst/gstevent.c:
+	  event: add annotations to gst_event_parse_toc_select()
+	  https://bugzilla.gnome.org/show_bug.cgi?id=736739
+
+2014-09-16 12:17:48 +0200  Ognyan Tonchev <ognyan@axis.com>
+
+	* gst/gstquery.c:
+	  query: Add annotations to gst_query_add_allocation_pool()
+	  https://bugzilla.gnome.org/show_bug.cgi?id=736736
+
+2014-09-11 18:01:58 -0300  Thiago Santos <thiagoss@osg.samsung.com>
+
+	* plugins/elements/gstmultiqueue.c:
+	* plugins/elements/gstmultiqueue.h:
+	  multiqueue: do not post messages holding the lock
+	  It might cause deadlocks to post messages while holding the multiqueue
+	  lock. To avoid this a new boolean flag is set whenever a new buffering percent
+	  is found. The message is posted after the lock can be released.
+	  To make sure the buffering messages are posted in the right order, messages
+	  are posted holding another lock. This prevents 2 threads trying to post
+	  messages at the same time.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=736295
+
+2014-09-15 16:38:17 +0200  Aurélien Zanelli <aurelien.zanelli@parrot.com>
+
+	* libs/gst/base/gstbasesrc.c:
+	  basesrc: handle reference in set_allocation rather than in prepare_allocation
+	  Otherwise we can forget to unref objects in error cases.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=736680
+
+2014-09-15 13:06:40 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* libs/gst/check/gstcheck.c:
+	  check: Use the name parameter of gst_check_setup_src_pad_by_name() and the sink variant
+	  This was hardcoded to "sink" / "src" by accident in previous refactoring.
+
+2014-09-10 14:53:00 +0200  Ognyan Tonchev <ognyan@axis.com>
+
+	* gst/gstquery.c:
+	  query: add annotations to gst_query_set_nth_allocation_pool()
+	  https://bugzilla.gnome.org//show_bug.cgi?id=736424
+
+2014-09-11 09:35:17 +0200  Rémi Lefèvre <remi.lefevre@parrot.com>
+
+	* plugins/elements/gstvalve.c:
+	  valve: fix typo in description
+	  https://bugzilla.gnome.org/show_bug.cgi?id=736455
+
+2014-08-27 17:06:57 +0530  Ravi Kiran K N <ravi.kiran@samsung.com>
+
+	* plugins/elements/gstoutputselector.c:
+	  output-selector: Send all events to active src pad and EOS to all src pads
+	  Fixes tests/icles/output-selector-test
+	  https://bugzilla.gnome.org/show_bug.cgi?id=729811
+
+2014-09-03 17:38:16 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+	* gst/gstdevicemonitor.c:
+	  devicemonitor: fix typo in sample code in docs
+	  https://bugzilla.gnome.org/show_bug.cgi?id=735975
+
+2014-08-07 12:18:04 +0200  Thibault Saunier <thibault.saunier@collabora.com>
+
+	* plugins/elements/gstmultiqueue.c:
+	  multiqueue: Not post BUFFERING message if one of the singlequeue doesn't need it
+	  Imagine the following 'pipeline'
+	  --------------
+	  p1/| 'fullqueue'  |--- 'laggy' downstream
+	  ---------  / |              |
+	  -| demuxer |   | multiqueue   |
+	  ---------  \ |              |
+	  p2\| 'emptyqueue' |--- 'fast' downstream
+	  --------------
+	  In the case downstream of one single queue (fullqueue) has (a lot of) latency
+	  (for example for reverse playback with video), we can end up having the other
+	  SingleQueue (emptyqueue) emptied, before that fullqueue gets
+	  unblocked. In the meantime, the demuxer tries to push on fullqueue, and
+	  is blocking there.
+	  In that case the current code will post a BUFFERING message on the bus when
+	  emptyqueue gets emptied, that leads to the application setting the pipeline state to
+	  PAUSED. So now we end up in a situation where 'laggy downstream' is
+	  prerolled and will not unblock anymore because the pipeline is set to
+	  PAUSED, the fullequeue does not have a chance to be emptied and
+	  the emptyqueue can not get filled anymore so no more BUFERRING message
+	  will be posted and the pipeline is stucked in PAUSED for the eternity.
+	  Making sure that we do not try to "buffer" if one of the single queue
+	  does not need buffering, prevents this situtation from happening though it lets the
+	  oportunity for buffering in all other cases.
+	  That implements a new logic where we need all singlequeue to need
+	  buffering for the multiqueue to actually state buffering is needed,
+	  taking the maximum buffering of the single queue as the reference point.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=734412
+
+2014-08-26 20:14:40 +0200  Arnaud Vrac <avrac@freebox.fr>
+
+	* gst/gstbuffer.c:
+	  buffer: do not touch memory tag flag when copying buffer flags
+	  The tag memory flag will be set later if the memory is also copied. This
+	  patch avoids buffers being freed needlessly in bufferpools.
+	  https://bugzilla.gnome.org/show_bug.cgi?id=735574
+
+=== release 1.4.1 ===
+
+2014-08-27 15:03:36 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* ChangeLog:
+	* NEWS:
+	* RELEASE:
+	* configure.ac:
+	* docs/plugins/inspect/plugin-coreelements.xml:
+	* gstreamer.doap:
+	* win32/common/config.h:
+	* win32/common/gstversion.h:
+	  Release 1.4.1
+
+2014-08-27 14:22:21 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+	* po/af.po:
+	* po/az.po:
+	* po/be.po:
+	* po/bg.po:
+	* po/ca.po:
+	* po/cs.po:
+	* po/da.po:
+	* po/de.po:
+	* po/el.po:
+	* po/en_GB.po:
+	* po/eo.po:
+	* po/es.po:
+	* po/eu.po:
+	* po/fi.po:
+	* po/fr.po:
+	* po/gl.po:
+	* po/hr.po:
+	* po/hu.po:
+	* po/id.po:
+	* po/it.po:
+	* po/ja.po:
+	* po/lt.po:
+	* po/nb.po:
+	* po/nl.po:
+	* po/pl.po:
+	* po/pt_BR.po:
+	* po/ro.po:
+	* po/ru.po:
+	* po/rw.po:
+	* po/sk.po:
+	* po/sl.po:
+	* po/sq.po:
+	* po/sr.po:
+	* po/sv.po:
+	* po/tr.po:
+	* po/uk.po:
+	* po/vi.po:
+	* po/zh_CN.po:
+	* po/zh_TW.po:
+	  Update .po files
 
 2014-08-21 14:02:16 +0100  Tim-Philipp Müller <tim@centricular.com>
 
diff --git a/NEWS b/NEWS
index 001b18b..78293a9 100644
--- a/NEWS
+++ b/NEWS
@@ -1,2 +1,2 @@
-This is GStreamer 1.4.1
+This is GStreamer 1.4.2
 
diff --git a/RELEASE b/RELEASE
index d66082c..68ef20a 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,6 +1,5 @@
 
-Release notes for GStreamer 1.4.1
-
+Release notes for GStreamer 1.4.2
 
 The GStreamer team is pleased to announce a bugfix release of the stable
 1.4 release series. The 1.4 release series is adding new features on top
@@ -48,11 +47,13 @@
 
 Bugs fixed in this release
      
-      * 732851 : funnel: storing sticky events after event callback
-      * 733805 : poll: WAKE_EVENT() reports false negatives on W32
-      * 733974 : gstbufferpool::default_alloc_buffer does not fail if buffer allocation fails
-      * 734688 : queue: race when receiving flush-stop event during shutdown, task gets re-started
-      * 734773 : Add allow-none annotation for gst_bin_new()
+      * 734412 : multiqueue: The buffering logic can lead to a pipeline stuck in PAUSED forever
+      * 735574 : buffer: do not touch memory tag flag when copying buffer flags
+      * 736295 : multiqueue: posts buffering message holding lock
+      * 736424 : query: add annotations to gst_query_set_nth_allocation_pool
+      * 736680 : basesrc: possible pool and allocator leak in prepare_allocation()
+      * 736736 : query: add annotations to gst_query_add_allocation_pool
+      * 736813 : typefindelement leaks sticky events upon flush_stop
 
 ==== Download ====
 
@@ -89,11 +90,13 @@
         
 Contributors to this release
     
-      * Mohammed Sameer
+      * Arnaud Vrac
+      * Aurélien Zanelli
+      * Ognyan Tonchev
+      * Ravi Kiran K N
+      * Rémi Lefèvre
       * Sebastian Dröge
-      * Sebastian Rasmussen
-      * Srimanta Panda
       * Thiago Santos
+      * Thibault Saunier
       * Tim-Philipp Müller
-      * Руслан Ижбулатов
  
\ No newline at end of file
diff --git a/configure b/configure
index 7175362..58ede48 100755
--- a/configure
+++ b/configure
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for GStreamer 1.4.1.
+# Generated by GNU Autoconf 2.69 for GStreamer 1.4.2.
 #
 # Report bugs to <http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer>.
 #
@@ -591,8 +591,8 @@
 # Identity of this package.
 PACKAGE_NAME='GStreamer'
 PACKAGE_TARNAME='gstreamer'
-PACKAGE_VERSION='1.4.1'
-PACKAGE_STRING='GStreamer 1.4.1'
+PACKAGE_VERSION='1.4.2'
+PACKAGE_STRING='GStreamer 1.4.2'
 PACKAGE_BUGREPORT='http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer'
 PACKAGE_URL=''
 
@@ -1638,7 +1638,7 @@
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures GStreamer 1.4.1 to adapt to many kinds of systems.
+\`configure' configures GStreamer 1.4.2 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1709,7 +1709,7 @@
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of GStreamer 1.4.1:";;
+     short | recursive ) echo "Configuration of GStreamer 1.4.2:";;
    esac
   cat <<\_ACEOF
 
@@ -1891,7 +1891,7 @@
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-GStreamer configure 1.4.1
+GStreamer configure 1.4.2
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2664,7 +2664,7 @@
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by GStreamer $as_me 1.4.1, which was
+It was created by GStreamer $as_me 1.4.2, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -3645,7 +3645,7 @@
 
 # Define the identity of the package.
  PACKAGE='gstreamer'
- VERSION='1.4.1'
+ VERSION='1.4.2'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -3856,9 +3856,9 @@
 
 
 
-  PACKAGE_VERSION_MAJOR=$(echo 1.4.1 | cut -d'.' -f1)
-  PACKAGE_VERSION_MINOR=$(echo 1.4.1 | cut -d'.' -f2)
-  PACKAGE_VERSION_MICRO=$(echo 1.4.1 | cut -d'.' -f3)
+  PACKAGE_VERSION_MAJOR=$(echo 1.4.2 | cut -d'.' -f1)
+  PACKAGE_VERSION_MINOR=$(echo 1.4.2 | cut -d'.' -f2)
+  PACKAGE_VERSION_MICRO=$(echo 1.4.2 | cut -d'.' -f3)
 
 
 
@@ -3869,7 +3869,7 @@
   { $as_echo "$as_me:${as_lineno-$LINENO}: checking nano version" >&5
 $as_echo_n "checking nano version... " >&6; }
 
-  NANO=$(echo 1.4.1 | cut -d'.' -f4)
+  NANO=$(echo 1.4.2 | cut -d'.' -f4)
 
   if test x"$NANO" = x || test "x$NANO" = "x0" ; then
     { $as_echo "$as_me:${as_lineno-$LINENO}: result: 0 (release)" >&5
@@ -8527,10 +8527,10 @@
 done
 
 
-  GST_CURRENT=401
+  GST_CURRENT=402
   GST_REVISION=0
-  GST_AGE=401
-  GST_LIBVERSION=401:0:401
+  GST_AGE=402
+  GST_LIBVERSION=402:0:402
 
 
 
@@ -27564,7 +27564,7 @@
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by GStreamer $as_me 1.4.1, which was
+This file was extended by GStreamer $as_me 1.4.2, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -27630,7 +27630,7 @@
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-GStreamer config.status 1.4.1
+GStreamer config.status 1.4.2
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
diff --git a/configure.ac b/configure.ac
index f3fa7e2..98f9325 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4,7 +4,7 @@
 dnl when going to/from release please set the nano (fourth number) right !
 dnl releases only do Wall, git and prerelease does Werror too
 dnl
-AC_INIT([GStreamer],[1.4.1],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gstreamer])
+AC_INIT([GStreamer],[1.4.2],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gstreamer])
 AG_GST_INIT
 
 dnl initialize automake (we require GNU make)
@@ -64,7 +64,7 @@
 dnl      1.10.9 (who knows) => 1009
 dnl
 dnl sets GST_LT_LDFLAGS
-AS_LIBTOOL(GST, 401, 0, 401)
+AS_LIBTOOL(GST, 402, 0, 402)
 
 dnl *** autotools stuff ****
 
diff --git a/docs/gst/html/GstEvent.html b/docs/gst/html/GstEvent.html
index 22cc6de..30d67cc 100644
--- a/docs/gst/html/GstEvent.html
+++ b/docs/gst/html/GstEvent.html
@@ -3012,7 +3012,7 @@
 <tr>
 <td class="parameter_name"><p>uid</p></td>
 <td class="parameter_description"><p> storage for the selection UID. </p></td>
-<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>]</span></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Parameter for returning results. Default is transfer full."><span class="acronym">out</span></acronym>][<acronym title="Free data after the code is done."><span class="acronym">transfer full</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 </tbody>
 </table></div>
diff --git a/docs/gst/html/GstQuery.html b/docs/gst/html/GstQuery.html
index 9742ebc..906bb0e 100644
--- a/docs/gst/html/GstQuery.html
+++ b/docs/gst/html/GstQuery.html
@@ -3311,8 +3311,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>pool</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the <a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>size</p></td>
@@ -3451,8 +3451,8 @@
 </tr>
 <tr>
 <td class="parameter_name"><p>pool</p></td>
-<td class="parameter_description"><p>the <a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a></p></td>
-<td class="parameter_annotations"> </td>
+<td class="parameter_description"><p> the <a class="link" href="GstBufferPool.html" title="GstBufferPool"><span class="type">GstBufferPool</span></a>. </p></td>
+<td class="parameter_annotations"><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>][<acronym title="NULL is OK, both for passing and for returning."><span class="acronym">allow-none</span></acronym>]</span></td>
 </tr>
 <tr>
 <td class="parameter_name"><p>size</p></td>
diff --git a/docs/gst/html/api-index-full.html b/docs/gst/html/api-index-full.html
index 70c5a3a..65cc817 100644
--- a/docs/gst/html/api-index-full.html
+++ b/docs/gst/html/api-index-full.html
@@ -2482,11 +2482,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstElement.html#gst-element-is-locked-state" title="gst_element_is_locked_state ()">gst_element_is_locked_state</a>, function in <a class="link" href="GstElement.html" title="GstElement">GstElement</a>
+<a class="link" href="GstElement.html#GST-ELEMENT-IS-LOCKED-STATE:CAPS" title="GST_ELEMENT_IS_LOCKED_STATE()">GST_ELEMENT_IS_LOCKED_STATE</a>, macro in <a class="link" href="GstElement.html" title="GstElement">GstElement</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstElement.html#GST-ELEMENT-IS-LOCKED-STATE:CAPS" title="GST_ELEMENT_IS_LOCKED_STATE()">GST_ELEMENT_IS_LOCKED_STATE</a>, macro in <a class="link" href="GstElement.html" title="GstElement">GstElement</a>
+<a class="link" href="GstElement.html#gst-element-is-locked-state" title="gst_element_is_locked_state ()">gst_element_is_locked_state</a>, function in <a class="link" href="GstElement.html" title="GstElement">GstElement</a>
 </dt>
 <dd></dd>
 <dt>
@@ -3193,11 +3193,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator">GstIterator</a>, struct in <a class="link" href="gstreamer-GstIterator.html" title="GstIterator">GstIterator</a>
+<a class="link" href="gstreamer-GstIterator.html#GST-ITERATOR:CAPS" title="GST_ITERATOR()">GST_ITERATOR</a>, macro in <a class="link" href="gstreamer-GstIterator.html" title="GstIterator">GstIterator</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-GstIterator.html#GST-ITERATOR:CAPS" title="GST_ITERATOR()">GST_ITERATOR</a>, macro in <a class="link" href="gstreamer-GstIterator.html" title="GstIterator">GstIterator</a>
+<a class="link" href="gstreamer-GstIterator.html#GstIterator" title="struct GstIterator">GstIterator</a>, struct in <a class="link" href="gstreamer-GstIterator.html" title="GstIterator">GstIterator</a>
 </dt>
 <dd></dd>
 <dt>
@@ -4538,15 +4538,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstPad.html#gst-pad-is-active" title="gst_pad_is_active ()">gst_pad_is_active</a>, function in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
-</dt>
-<dd></dd>
-<dt>
 <a class="link" href="GstPad.html#GST-PAD-IS-ACTIVE:CAPS" title="GST_PAD_IS_ACTIVE()">GST_PAD_IS_ACTIVE</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="GstPad.html#GST-PAD-IS-BLOCKED:CAPS" title="GST_PAD_IS_BLOCKED()">GST_PAD_IS_BLOCKED</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
+<a class="link" href="GstPad.html#gst-pad-is-active" title="gst_pad_is_active ()">gst_pad_is_active</a>, function in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
 </dt>
 <dd></dd>
 <dt>
@@ -4554,6 +4550,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="GstPad.html#GST-PAD-IS-BLOCKED:CAPS" title="GST_PAD_IS_BLOCKED()">GST_PAD_IS_BLOCKED</a>, macro in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="GstPad.html#gst-pad-is-blocking" title="gst_pad_is_blocking ()">gst_pad_is_blocking</a>, function in <a class="link" href="GstPad.html" title="GstPad">GstPad</a>
 </dt>
 <dd></dd>
@@ -5410,11 +5410,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-GstPoll.html#gst-poll-fd-init" title="gst_poll_fd_init ()">gst_poll_fd_init</a>, function in <a class="link" href="gstreamer-GstPoll.html" title="GstPoll">GstPoll</a>
+<a class="link" href="gstreamer-GstPoll.html#GST-POLL-FD-INIT:CAPS" title="GST_POLL_FD_INIT">GST_POLL_FD_INIT</a>, macro in <a class="link" href="gstreamer-GstPoll.html" title="GstPoll">GstPoll</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-GstPoll.html#GST-POLL-FD-INIT:CAPS" title="GST_POLL_FD_INIT">GST_POLL_FD_INIT</a>, macro in <a class="link" href="gstreamer-GstPoll.html" title="GstPoll">GstPoll</a>
+<a class="link" href="gstreamer-GstPoll.html#gst-poll-fd-init" title="gst_poll_fd_init ()">gst_poll_fd_init</a>, function in <a class="link" href="gstreamer-GstPoll.html" title="GstPoll">GstPoll</a>
 </dt>
 <dd></dd>
 <dt>
diff --git a/docs/gst/html/gstreamer-GstDeviceMonitor.html b/docs/gst/html/gstreamer-GstDeviceMonitor.html
index 332cfc7..975d05a 100644
--- a/docs/gst/html/gstreamer-GstDeviceMonitor.html
+++ b/docs/gst/html/gstreamer-GstDeviceMonitor.html
@@ -187,7 +187,7 @@
 <span class="function">my_bus_func</span> <span class="gtkdoc opt">(</span>GstBus <span class="gtkdoc opt">*</span> bus<span class="gtkdoc opt">,</span> GstMessage <span class="gtkdoc opt">*</span> message<span class="gtkdoc opt">,</span> gpointer user_data<span class="gtkdoc opt">)</span>
 <span class="gtkdoc opt">{</span>
    GstDevice <span class="gtkdoc opt">*</span>device<span class="gtkdoc opt">;</span>
-   gchar name<span class="gtkdoc opt">;</span>
+   gchar <span class="gtkdoc opt">*</span>name<span class="gtkdoc opt">;</span>
 
    <span class="keyword">switch</span> <span class="gtkdoc opt">(</span><span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstMessage.html#GST-MESSAGE-TYPE:CAPS">GST_MESSAGE_TYPE</a></span> <span class="gtkdoc opt">(</span>message<span class="gtkdoc opt">)) {</span>
      <span class="keyword">case</span> GST_MESSAGE_DEVICE_ADDED<span class="gtkdoc opt">:</span>
@@ -221,7 +221,7 @@
    <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstBus.html#gst-bus-add-watch">gst_bus_add_watch</a></span> <span class="gtkdoc opt">(</span>bus<span class="gtkdoc opt">,</span> my_bus_func<span class="gtkdoc opt">,</span> NULL<span class="gtkdoc opt">);</span>
    <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstObject.html#gst-object-unref">gst_object_unref</a></span> <span class="gtkdoc opt">(</span>bus<span class="gtkdoc opt">);</span>
 
-   caps <span class="gtkdoc opt">=</span> <span class="function">gst_caps_new_simple_empty</span> <span class="gtkdoc opt">(</span><span class="string">&quot;video/x-raw&quot;</span><span class="gtkdoc opt">);</span>
+   caps <span class="gtkdoc opt">=</span> <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-new-empty-simple">gst_caps_new_empty_simple</a></span> <span class="gtkdoc opt">(</span><span class="string">&quot;video/x-raw&quot;</span><span class="gtkdoc opt">);</span>
    <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/gstreamer-GstDeviceMonitor.html#gst-device-monitor-add-filter">gst_device_monitor_add_filter</a></span> <span class="gtkdoc opt">(</span>monitor<span class="gtkdoc opt">,</span> <span class="string">&quot;Video/Source&quot;</span><span class="gtkdoc opt">,</span> caps<span class="gtkdoc opt">);</span>
    <span class="function"><a href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/GstCaps.html#gst-caps-unref">gst_caps_unref</a></span> <span class="gtkdoc opt">(</span>caps<span class="gtkdoc opt">);</span>
 
diff --git a/docs/gst/html/gstreamer-GstVersion.html b/docs/gst/html/gstreamer-GstVersion.html
index 7f77d42..ce68d9b 100644
--- a/docs/gst/html/gstreamer-GstVersion.html
+++ b/docs/gst/html/gstreamer-GstVersion.html
@@ -98,7 +98,7 @@
 <hr>
 <div class="refsect2">
 <a name="GST-VERSION-MICRO:CAPS"></a><h3>GST_VERSION_MICRO</h3>
-<pre class="programlisting">#define GST_VERSION_MICRO (1)
+<pre class="programlisting">#define GST_VERSION_MICRO (2)
 </pre>
 <p>The micro version of GStreamer at compile time:</p>
 </div>
diff --git a/docs/gst/html/index.html b/docs/gst/html/index.html
index 575495a..2dd41cc 100644
--- a/docs/gst/html/index.html
+++ b/docs/gst/html/index.html
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer 1.0 Core Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for GStreamer Core 1.0 (1.4.1)
+      for GStreamer Core 1.0 (1.4.2)
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer/html/</a>.
     </p></div>
diff --git a/docs/libs/html/api-index-full.html b/docs/libs/html/api-index-full.html
index 593bf33..b01428a 100644
--- a/docs/libs/html/api-index-full.html
+++ b/docs/libs/html/api-index-full.html
@@ -797,11 +797,11 @@
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-init" title="gst_bit_reader_init ()">gst_bit_reader_init</a>, function in <a class="link" href="gstreamer-libs-GstBitReader.html" title="GstBitReader">GstBitReader</a>
+<a class="link" href="gstreamer-libs-GstBitReader.html#GST-BIT-READER-INIT:CAPS" title="GST_BIT_READER_INIT()">GST_BIT_READER_INIT</a>, macro in <a class="link" href="gstreamer-libs-GstBitReader.html" title="GstBitReader">GstBitReader</a>
 </dt>
 <dd></dd>
 <dt>
-<a class="link" href="gstreamer-libs-GstBitReader.html#GST-BIT-READER-INIT:CAPS" title="GST_BIT_READER_INIT()">GST_BIT_READER_INIT</a>, macro in <a class="link" href="gstreamer-libs-GstBitReader.html" title="GstBitReader">GstBitReader</a>
+<a class="link" href="gstreamer-libs-GstBitReader.html#gst-bit-reader-init" title="gst_bit_reader_init ()">gst_bit_reader_init</a>, function in <a class="link" href="gstreamer-libs-GstBitReader.html" title="GstBitReader">GstBitReader</a>
 </dt>
 <dd></dd>
 <dt>
diff --git a/docs/libs/html/index.html b/docs/libs/html/index.html
index 6e19c51..409bce6 100644
--- a/docs/libs/html/index.html
+++ b/docs/libs/html/index.html
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer 1.0 Library Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for GStreamer Library 1.0 (1.4.1)
+      for GStreamer Library 1.0 (1.4.2)
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-libs/html/</a>.
     </p></div>
diff --git a/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html b/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html
index f78411e..825c0d1 100644
--- a/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html
+++ b/docs/plugins/html/gstreamer-plugins-plugin-coreelements.html
@@ -41,7 +41,7 @@
 </tr>
 <tr>
 <td><p><span class="term">version</span></p></td>
-<td>1.4.1</td>
+<td>1.4.2</td>
 </tr>
 <tr>
 <td><p><span class="term">run-time license</span></p></td>
diff --git a/docs/plugins/html/gstreamer-plugins-valve.html b/docs/plugins/html/gstreamer-plugins-valve.html
index f90c95e..adfece8 100644
--- a/docs/plugins/html/gstreamer-plugins-valve.html
+++ b/docs/plugins/html/gstreamer-plugins-valve.html
@@ -74,7 +74,7 @@
 <a name="gstreamer-plugins-valve.description"></a><h2>Description</h2>
 <p>The valve is a simple element that drops buffers when the <a class="link" href="gstreamer-plugins-valve.html#GstValve--drop" title="The “drop” property"><span class="type">“drop”</span></a>
 property is set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> and lets then through otherwise.</p>
-<p>Any downstream error received while the <a class="link" href="gstreamer-plugins-valve.html#GstValve--drop" title="The “drop” property"><span class="type">“drop”</span></a> property is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>
+<p>Any downstream error received while the <a class="link" href="gstreamer-plugins-valve.html#GstValve--drop" title="The “drop” property"><span class="type">“drop”</span></a> property is <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
 is ignored. So downstream element can be set to  <code class="literal">GST_STATE_NULL</code> and removed,
 without using pad blocking.</p>
 <div class="refsynopsisdiv">
diff --git a/docs/plugins/html/index.html b/docs/plugins/html/index.html
index e107eb8..98d1de5 100644
--- a/docs/plugins/html/index.html
+++ b/docs/plugins/html/index.html
@@ -15,7 +15,7 @@
 <div>
 <div><table class="navigation" id="top" width="100%" cellpadding="2" cellspacing="0"><tr><th valign="middle"><p class="title">GStreamer Core Plugins 1.0 Plugins Reference Manual</p></th></tr></table></div>
 <div><p class="releaseinfo">
-      for GStreamer Core Plugins 1.0 (1.4.1)
+      for GStreamer Core Plugins 1.0 (1.4.2)
       The latest version of this documentation can be found on-line at
       <a class="ulink" href="http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-plugins/html/" target="_top">http://gstreamer.freedesktop.org/data/doc/gstreamer/head/gstreamer-plugins/html/</a>.
     </p></div>
diff --git a/docs/plugins/inspect/plugin-coreelements.xml b/docs/plugins/inspect/plugin-coreelements.xml
index 494ac50..5256fe9 100644
--- a/docs/plugins/inspect/plugin-coreelements.xml
+++ b/docs/plugins/inspect/plugin-coreelements.xml
@@ -3,7 +3,7 @@
   <description>GStreamer core elements</description>
   <filename>../../plugins/elements/.libs/libgstcoreelements.so</filename>
   <basename>libgstcoreelements.so</basename>
-  <version>1.4.1</version>
+  <version>1.4.2</version>
   <license>LGPL</license>
   <source>gstreamer</source>
   <package>GStreamer source release</package>
diff --git a/docs/pwg/advanced-tagging.xml b/docs/pwg/advanced-tagging.xml
index 082d732..ae991d8 100644
--- a/docs/pwg/advanced-tagging.xml
+++ b/docs/pwg/advanced-tagging.xml
@@ -54,7 +54,7 @@
     <title>Reading Tags from Streams</title>
     <para>
       The basic object for tags is a <ulink type="http"
-      url="../../gstreamer/html/gstreamer-GstTagList.html"><classname>GstTagList
+      url="../../gstreamer/html/GstTagList.html"><classname>GstTagList
       </classname></ulink>. An element that is reading tags from a stream should
       create an empty taglist and fill this with individual tags. Empty tag
       lists can be created with <function>gst_tag_list_new ()</function>. Then,
diff --git a/docs/pwg/intro-basics.xml b/docs/pwg/intro-basics.xml
index e864e5e..de065d2 100644
--- a/docs/pwg/intro-basics.xml
+++ b/docs/pwg/intro-basics.xml
@@ -190,8 +190,8 @@
       See the &GstLibRef; for the current implementation details of a <ulink
       type="http"
       url="../../gstreamer/html/gstreamer-GstMiniObject.html"><classname>GstMiniObject</classname></ulink>, <ulink type="http"
-      url="../../gstreamer/html/gstreamer-GstBuffer.html"><classname>GstBuffer</classname></ulink> and <ulink type="http"
-      url="../../gstreamer/html/gstreamer-GstEvent.html"><classname>GstEvent</classname></ulink>.
+      url="../../gstreamer/html/GstBuffer.html"><classname>GstBuffer</classname></ulink> and <ulink type="http"
+      url="../../gstreamer/html/GstEvent.html"><classname>GstEvent</classname></ulink>.
     </para>
 
     <sect2 id="sect2-buffer-allocation" xreflabel="Buffer Allocation">
diff --git a/gst/gstbuffer.c b/gst/gstbuffer.c
index 24efc56..eb7077a 100644
--- a/gst/gstbuffer.c
+++ b/gst/gstbuffer.c
@@ -397,7 +397,11 @@
 
   if (flags & GST_BUFFER_COPY_FLAGS) {
     /* copy flags */
-    GST_MINI_OBJECT_FLAGS (dest) = GST_MINI_OBJECT_FLAGS (src);
+    guint flags_mask = ~GST_BUFFER_FLAG_TAG_MEMORY;
+
+    GST_MINI_OBJECT_FLAGS (dest) =
+        (GST_MINI_OBJECT_FLAGS (src) & flags_mask) |
+        (GST_MINI_OBJECT_FLAGS (dest) & ~flags_mask);
   }
 
   if (flags & GST_BUFFER_COPY_TIMESTAMPS) {
diff --git a/gst/gstdevicemonitor.c b/gst/gstdevicemonitor.c
index 458c43b..a1394a2 100644
--- a/gst/gstdevicemonitor.c
+++ b/gst/gstdevicemonitor.c
@@ -41,7 +41,7 @@
  *   my_bus_func (GstBus * bus, GstMessage * message, gpointer user_data)
  *   {
  *      GstDevice *device;
- *      gchar name;
+ *      gchar *name;
  *
  *      switch (GST_MESSAGE_TYPE (message)) {
  *        case GST_MESSAGE_DEVICE_ADDED:
@@ -75,7 +75,7 @@
  *      gst_bus_add_watch (bus, my_bus_func, NULL);
  *      gst_object_unref (bus);
  *
- *      caps = gst_caps_new_simple_empty ("video/x-raw");
+ *      caps = gst_caps_new_empty_simple ("video/x-raw");
  *      gst_device_monitor_add_filter (monitor, "Video/Source", caps);
  *      gst_caps_unref (caps);
  *
diff --git a/gst/gstevent.c b/gst/gstevent.c
index 2217968..a1cb381 100644
--- a/gst/gstevent.c
+++ b/gst/gstevent.c
@@ -1669,7 +1669,7 @@
 /**
  * gst_event_parse_toc_select:
  * @event: a TOC select event.
- * @uid: (out): storage for the selection UID.
+ * @uid: (out) (transfer full) (allow-none): storage for the selection UID.
  *
  * Parse a TOC select @event and store the results in the given @uid location.
  */
diff --git a/gst/gstquery.c b/gst/gstquery.c
index c35df63..38fc5c5 100644
--- a/gst/gstquery.c
+++ b/gst/gstquery.c
@@ -1584,7 +1584,7 @@
 /**
  * gst_query_add_allocation_pool:
  * @query: A valid #GstQuery of type GST_QUERY_ALLOCATION.
- * @pool: the #GstBufferPool
+ * @pool: (transfer none) (allow-none): the #GstBufferPool
  * @size: the size
  * @min_buffers: the min buffers
  * @max_buffers: the max buffers
@@ -1687,7 +1687,7 @@
  * gst_query_set_nth_allocation_pool:
  * @index: index to modify
  * @query: A valid #GstQuery of type GST_QUERY_ALLOCATION.
- * @pool: the #GstBufferPool
+ * @pool: (transfer none) (allow-none): the #GstBufferPool
  * @size: the size
  * @min_buffers: the min buffers
  * @max_buffers: the max buffers
diff --git a/gstreamer.doap b/gstreamer.doap
index f8e866c..7bc7574 100644
--- a/gstreamer.doap
+++ b/gstreamer.doap
@@ -40,6 +40,16 @@
 
  <release>
   <Version>
+   <revision>1.4.2</revision>
+   <branch>1.4</branch>
+   <name></name>
+   <created>2014-09-19</created>
+   <file-release rdf:resource="http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.4.2.tar.xz" />
+  </Version>
+ </release>
+
+ <release>
+  <Version>
    <revision>1.4.1</revision>
    <branch>1.4</branch>
    <name></name>
diff --git a/gstreamer.spec b/gstreamer.spec
index 904b648..62d53a2 100644
--- a/gstreamer.spec
+++ b/gstreamer.spec
@@ -4,7 +4,7 @@
 %define 	_glib2		2.32.0
 
 Name: 		%{gstreamer}
-Version: 	1.4.1
+Version: 	1.4.2
 Release: 	1
 Summary: 	GStreamer streaming media framework runtime
 
diff --git a/libs/gst/base/gstbasesrc.c b/libs/gst/base/gstbasesrc.c
index 9c8a0c6..b157a05 100644
--- a/libs/gst/base/gstbasesrc.c
+++ b/libs/gst/base/gstbasesrc.c
@@ -2965,6 +2965,11 @@
   oldalloc = priv->allocator;
   priv->allocator = allocator;
 
+  if (priv->pool)
+    gst_object_ref (priv->pool);
+  if (priv->allocator)
+    gst_object_ref (priv->allocator);
+
   if (params)
     priv->params = *params;
   else
@@ -3141,6 +3146,11 @@
 
   result = gst_base_src_set_allocation (basesrc, pool, allocator, &params);
 
+  if (allocator)
+    gst_object_unref (allocator);
+  if (pool)
+    gst_object_unref (pool);
+
   gst_query_unref (query);
 
   return result;
diff --git a/libs/gst/check/gstcheck.c b/libs/gst/check/gstcheck.c
index e92f4c8..8cadbca 100644
--- a/libs/gst/check/gstcheck.c
+++ b/libs/gst/check/gstcheck.c
@@ -266,8 +266,7 @@
   GstPadTemplate *ptmpl = gst_static_pad_template_get (tmpl);
   GstPad *srcpad;
 
-  srcpad =
-      gst_check_setup_src_pad_by_name_from_template (element, ptmpl, "sink");
+  srcpad = gst_check_setup_src_pad_by_name_from_template (element, ptmpl, name);
 
   gst_object_unref (ptmpl);
 
@@ -394,7 +393,7 @@
   GstPad *sinkpad;
 
   sinkpad =
-      gst_check_setup_sink_pad_by_name_from_template (element, ptmpl, "src");
+      gst_check_setup_sink_pad_by_name_from_template (element, ptmpl, name);
 
   gst_object_unref (ptmpl);
 
diff --git a/plugins/elements/gstmultiqueue.c b/plugins/elements/gstmultiqueue.c
index 9f58806..a61c04c 100644
--- a/plugins/elements/gstmultiqueue.c
+++ b/plugins/elements/gstmultiqueue.c
@@ -200,6 +200,7 @@
 static void single_queue_underrun_cb (GstDataQueue * dq, GstSingleQueue * sq);
 
 static void update_buffering (GstMultiQueue * mq, GstSingleQueue * sq);
+static void gst_multi_queue_post_buffering (GstMultiQueue * mq);
 
 static void gst_single_queue_flush_queue (GstSingleQueue * sq, gboolean full);
 
@@ -271,6 +272,14 @@
   g_mutex_unlock (&q->qlock);                                            \
 } G_STMT_END
 
+#define SET_PERCENT(mq, perc) G_STMT_START {                             \
+  if (perc != mq->percent) {                                             \
+    mq->percent = perc;                                                  \
+    mq->percent_changed = TRUE;                                          \
+    GST_DEBUG_OBJECT (mq, "buffering %d percent", perc);                 \
+  }                                                                      \
+} G_STMT_END
+
 static void gst_multi_queue_finalize (GObject * object);
 static void gst_multi_queue_set_property (GObject * object,
     guint prop_id, const GValue * value, GParamSpec * pspec);
@@ -457,6 +466,7 @@
   mqueue->high_time = GST_CLOCK_TIME_NONE;
 
   g_mutex_init (&mqueue->qlock);
+  g_mutex_init (&mqueue->buffering_post_lock);
 }
 
 static void
@@ -471,6 +481,7 @@
 
   /* free/unref instance data */
   g_mutex_clear (&mqueue->qlock);
+  g_mutex_clear (&mqueue->buffering_post_lock);
 
   G_OBJECT_CLASS (parent_class)->finalize (object);
 }
@@ -498,6 +509,7 @@
       mq->max_size.bytes = g_value_get_uint (value);
       SET_CHILD_PROPERTY (mq, bytes);
       GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+      gst_multi_queue_post_buffering (mq);
       break;
     case PROP_MAX_SIZE_BUFFERS:
     {
@@ -533,6 +545,7 @@
       }
 
       GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+      gst_multi_queue_post_buffering (mq);
 
       break;
     }
@@ -541,6 +554,7 @@
       mq->max_size.time = g_value_get_uint64 (value);
       SET_CHILD_PROPERTY (mq, time);
       GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+      gst_multi_queue_post_buffering (mq);
       break;
     case PROP_EXTRA_SIZE_BYTES:
       mq->extra_size.bytes = g_value_get_uint (value);
@@ -554,13 +568,11 @@
     case PROP_USE_BUFFERING:
       mq->use_buffering = g_value_get_boolean (value);
       if (!mq->use_buffering && mq->buffering) {
-        GstMessage *message;
-
+        GST_MULTI_QUEUE_MUTEX_LOCK (mq);
         mq->buffering = FALSE;
         GST_DEBUG_OBJECT (mq, "buffering 100 percent");
-        message = gst_message_new_buffering (GST_OBJECT_CAST (mq), 100);
-
-        gst_element_post_message (GST_ELEMENT_CAST (mq), message);
+        SET_PERCENT (mq, 100);
+        GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
       }
 
       if (mq->use_buffering) {
@@ -579,6 +591,7 @@
 
         GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
       }
+      gst_multi_queue_post_buffering (mq);
       break;
     case PROP_LOW_PERCENT:
       mq->low_percent = g_value_get_int (value);
@@ -771,6 +784,7 @@
       SET_CHILD_PROPERTY (mqueue, visible);
 
       GST_MULTI_QUEUE_MUTEX_UNLOCK (mqueue);
+      gst_multi_queue_post_buffering (mqueue);
 
       break;
     }
@@ -832,8 +846,9 @@
     result = gst_pad_pause_task (sq->srcpad);
     sq->sink_tainted = sq->src_tainted = TRUE;
   } else {
-    GST_MULTI_QUEUE_MUTEX_LOCK (mq);
     gst_single_queue_flush_queue (sq, full);
+
+    GST_MULTI_QUEUE_MUTEX_LOCK (mq);
     gst_segment_init (&sq->sink_segment, GST_FORMAT_TIME);
     gst_segment_init (&sq->src_segment, GST_FORMAT_TIME);
     sq->has_src_segment = FALSE;
@@ -864,20 +879,16 @@
   return result;
 }
 
-static void
-update_buffering (GstMultiQueue * mq, GstSingleQueue * sq)
+/* WITH LOCK TAKEN */
+static gint
+get_percentage (GstSingleQueue * sq)
 {
   GstDataQueueSize size;
   gint percent, tmp;
-  gboolean post = FALSE;
-
-  /* nothing to dowhen we are not in buffering mode */
-  if (!mq->use_buffering)
-    return;
 
   gst_data_queue_get_level (sq->queue, &size);
 
-  GST_DEBUG_OBJECT (mq,
+  GST_DEBUG_OBJECT (sq->mqueue,
       "queue %d: visible %u/%u, bytes %u/%u, time %" G_GUINT64_FORMAT "/%"
       G_GUINT64_FORMAT, sq->id, size.visible, sq->max_size.visible,
       size.bytes, sq->max_size.bytes, sq->cur_time, sq->max_size.time);
@@ -897,43 +908,76 @@
     }
   }
 
+  return percent;
+}
+
+/* WITH LOCK TAKEN */
+static void
+update_buffering (GstMultiQueue * mq, GstSingleQueue * sq)
+{
+  gint percent;
+
+  /* nothing to dowhen we are not in buffering mode */
+  if (!mq->use_buffering)
+    return;
+
+  percent = get_percentage (sq);
+
   if (mq->buffering) {
-    post = TRUE;
     if (percent >= mq->high_percent) {
       mq->buffering = FALSE;
     }
     /* make sure it increases */
     percent = MAX (mq->percent, percent);
 
-    if (percent == mq->percent)
-      /* don't post if nothing changed */
-      post = FALSE;
-    else
-      /* else keep last value we posted */
-      mq->percent = percent;
+    SET_PERCENT (mq, percent);
   } else {
-    if (percent < mq->low_percent) {
+    GList *iter;
+    gboolean is_buffering = TRUE;
+
+    for (iter = mq->queues; iter; iter = g_list_next (iter)) {
+      GstSingleQueue *oq = (GstSingleQueue *) iter->data;
+
+      if (get_percentage (oq) >= 100) {
+        is_buffering = FALSE;
+
+        break;
+      }
+    }
+
+    if (is_buffering && percent < mq->low_percent) {
       mq->buffering = TRUE;
-      mq->percent = percent;
-      post = TRUE;
+      SET_PERCENT (mq, percent);
     }
   }
-  if (post) {
-    GstMessage *message;
+}
 
-    /* scale to high percent so that it becomes the 100% mark */
+static void
+gst_multi_queue_post_buffering (GstMultiQueue * mq)
+{
+  GstMessage *msg = NULL;
+
+  g_mutex_lock (&mq->buffering_post_lock);
+  GST_MULTI_QUEUE_MUTEX_LOCK (mq);
+  if (mq->percent_changed) {
+    gint percent = mq->percent;
+
+    mq->percent_changed = FALSE;
+
     percent = percent * 100 / mq->high_percent;
     /* clip */
     if (percent > 100)
       percent = 100;
 
-    GST_DEBUG_OBJECT (mq, "buffering %d percent", percent);
-    message = gst_message_new_buffering (GST_OBJECT_CAST (mq), percent);
-
-    gst_element_post_message (GST_ELEMENT_CAST (mq), message);
-  } else {
-    GST_DEBUG_OBJECT (mq, "filled %d percent", percent);
+    GST_DEBUG_OBJECT (mq, "Going to post buffering: %d%%", percent);
+    msg = gst_message_new_buffering (GST_OBJECT_CAST (mq), percent);
   }
+  GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+
+  if (msg != NULL)
+    gst_element_post_message (GST_ELEMENT_CAST (mq), msg);
+
+  g_mutex_unlock (&mq->buffering_post_lock);
 }
 
 /* calculate the diff between running time on the sink and src of the queue.
@@ -1034,6 +1078,7 @@
   update_time_level (mq, sq);
 
   GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+  gst_multi_queue_post_buffering (mq);
 }
 
 /* take a buffer and update segment, updating the time level of the queue. */
@@ -1065,6 +1110,7 @@
   /* calc diff with other end */
   update_time_level (mq, sq);
   GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+  gst_multi_queue_post_buffering (mq);
 }
 
 static GstClockTime
@@ -1443,6 +1489,7 @@
     update_buffering (mq, sq);
 
   GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
+  gst_multi_queue_post_buffering (mq);
 
   if (result != GST_FLOW_OK && result != GST_FLOW_NOT_LINKED
       && result != GST_FLOW_EOS)
@@ -1698,8 +1745,11 @@
       }
 
       /* EOS affects the buffering state */
+      GST_MULTI_QUEUE_MUTEX_LOCK (mq);
       update_buffering (mq, sq);
+      GST_MULTI_QUEUE_MUTEX_UNLOCK (mq);
       single_queue_overrun_cb (sq->queue, sq);
+      gst_multi_queue_post_buffering (mq);
       break;
     case GST_EVENT_SEGMENT:
       apply_segment (mq, sq, sref, &sq->sink_segment);
@@ -2165,7 +2215,10 @@
   if (was_flushing)
     gst_data_queue_set_flushing (sq->queue, TRUE);
 
+  GST_MULTI_QUEUE_MUTEX_LOCK (sq->mqueue);
   update_buffering (sq->mqueue, sq);
+  GST_MULTI_QUEUE_MUTEX_UNLOCK (sq->mqueue);
+  gst_multi_queue_post_buffering (sq->mqueue);
 }
 
 static void
diff --git a/plugins/elements/gstmultiqueue.h b/plugins/elements/gstmultiqueue.h
index adeeb18..d63eda5 100644
--- a/plugins/elements/gstmultiqueue.h
+++ b/plugins/elements/gstmultiqueue.h
@@ -74,6 +74,9 @@
 			/* GstMultiQueueSize, counter and highid */
 
   gint numwaiting;	/* number of not-linked pads waiting */
+
+  gboolean percent_changed;
+  GMutex buffering_post_lock; /* assures only one posted at a time */
 };
 
 struct _GstMultiQueueClass {
diff --git a/plugins/elements/gstoutputselector.c b/plugins/elements/gstoutputselector.c
index ec12e28..61e49a6 100644
--- a/plugins/elements/gstoutputselector.c
+++ b/plugins/elements/gstoutputselector.c
@@ -534,29 +534,26 @@
   sel = GST_OUTPUT_SELECTOR (parent);
 
   switch (GST_EVENT_TYPE (event)) {
-    case GST_EVENT_SEGMENT:
+    case GST_EVENT_EOS:
     {
-      gst_event_copy_segment (event, &sel->segment);
-
-      GST_DEBUG_OBJECT (sel, "configured SEGMENT %" GST_SEGMENT_FORMAT,
-          &sel->segment);
-
       res = gst_output_selector_forward_event (sel, event);
       break;
     }
+    case GST_EVENT_SEGMENT:
+    {
+      gst_event_copy_segment (event, &sel->segment);
+      GST_DEBUG_OBJECT (sel, "configured SEGMENT %" GST_SEGMENT_FORMAT,
+          &sel->segment);
+      /* fall through */
+    }
     default:
     {
-      if (GST_EVENT_IS_STICKY (event)) {
-        res = gst_output_selector_forward_event (sel, event);
+      active = gst_output_selector_get_active (sel);
+      if (active) {
+        res = gst_pad_push_event (active, event);
+        gst_object_unref (active);
       } else {
-        /* Send other events to pending or active src pad */
-        active = gst_output_selector_get_active (sel);
-        if (active) {
-          res = gst_pad_push_event (active, event);
-          gst_object_unref (active);
-        } else {
-          gst_event_unref (event);
-        }
+        gst_event_unref (event);
       }
       break;
     }
diff --git a/plugins/elements/gsttypefindelement.c b/plugins/elements/gsttypefindelement.c
index 02ce2be..4c77b74 100644
--- a/plugins/elements/gsttypefindelement.c
+++ b/plugins/elements/gsttypefindelement.c
@@ -653,13 +653,12 @@
           GST_OBJECT_LOCK (typefind);
 
           for (l = typefind->cached_events; l; l = l->next) {
-            if (!GST_EVENT_IS_STICKY (l->data) ||
-                GST_EVENT_TYPE (l->data) == GST_EVENT_SEGMENT ||
-                GST_EVENT_TYPE (l->data) == GST_EVENT_EOS) {
-              gst_event_unref (l->data);
-            } else {
+            if (GST_EVENT_IS_STICKY (l->data) &&
+                GST_EVENT_TYPE (l->data) != GST_EVENT_SEGMENT &&
+                GST_EVENT_TYPE (l->data) != GST_EVENT_EOS) {
               gst_pad_store_sticky_event (typefind->src, l->data);
             }
+            gst_event_unref (l->data);
           }
 
           g_list_free (typefind->cached_events);
diff --git a/plugins/elements/gstvalve.c b/plugins/elements/gstvalve.c
index e12e150..23ffa1c 100644
--- a/plugins/elements/gstvalve.c
+++ b/plugins/elements/gstvalve.c
@@ -26,7 +26,7 @@
  * The valve is a simple element that drops buffers when the #GstValve:drop
  * property is set to %TRUE and lets then through otherwise.
  *
- * Any downstream error received while the #GstValve:drop property is %FALSE
+ * Any downstream error received while the #GstValve:drop property is %TRUE
  * is ignored. So downstream element can be set to  %GST_STATE_NULL and removed,
  * without using pad blocking.
  */
diff --git a/po/af.gmo b/po/af.gmo
index b991974..1d176bf 100644
--- a/po/af.gmo
+++ b/po/af.gmo
Binary files differ
diff --git a/po/af.po b/po/af.po
index ee8a387..8475c63 100644
--- a/po/af.po
+++ b/po/af.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.9.7\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2005-12-05 11:45+0200\n"
 "Last-Translator: Petri Jooste <rkwjpj@puk.ac.za>\n"
 "Language-Team: Afrikaans <i18n@af.org.za>\n"
diff --git a/po/az.gmo b/po/az.gmo
index c1df217..d86d3cc 100644
--- a/po/az.gmo
+++ b/po/az.gmo
Binary files differ
diff --git a/po/az.po b/po/az.po
index 3d2edc6..c925e72 100644
--- a/po/az.po
+++ b/po/az.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-0.8.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2004-03-19 18:40+0200\n"
 "Last-Translator: Metin Amiroff <metin@karegen.com>\n"
 "Language-Team: Azerbaijani <translation-team-az@lists.sourceforge.net>\n"
diff --git a/po/be.gmo b/po/be.gmo
index b92c3a2..3d70eb4 100644
--- a/po/be.gmo
+++ b/po/be.gmo
Binary files differ
diff --git a/po/be.po b/po/be.po
index 76e65fe..55717ca 100644
--- a/po/be.po
+++ b/po/be.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.9.7\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2006-01-18 22:26+0200\n"
 "Last-Translator: Ales Nyakhaychyk <nab@mail.by>\n"
 "Language-Team: Belarusian <i18n@mova.org>\n"
diff --git a/po/bg.gmo b/po/bg.gmo
index a36f07c..39980b9 100644
--- a/po/bg.gmo
+++ b/po/bg.gmo
Binary files differ
diff --git a/po/bg.po b/po/bg.po
index c1fac5b..4b1275f 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2011-04-26 22:40+0300\n"
 "Last-Translator: Alexander Shopov <ash@kambanaria.org>\n"
 "Language-Team: Bulgarian <dict@fsa-bg.org>\n"
diff --git a/po/ca.gmo b/po/ca.gmo
index 86fa191..98d323b 100644
--- a/po/ca.gmo
+++ b/po/ca.gmo
Binary files differ
diff --git a/po/ca.po b/po/ca.po
index 734eb9e..fb4fd43 100644
--- a/po/ca.po
+++ b/po/ca.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2010-11-04 19:41+0100\n"
 "Last-Translator: Jordi Mallach <jordi@sindominio.net>\n"
 "Language-Team: Catalan <ca@dodds.net>\n"
diff --git a/po/cs.gmo b/po/cs.gmo
index 41fc8a8..093d668 100644
--- a/po/cs.gmo
+++ b/po/cs.gmo
Binary files differ
diff --git a/po/cs.po b/po/cs.po
index d87cc38..cd242e1 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-03-09 11:07+0100\n"
 "Last-Translator: Marek Černocký <marek@manet.cz>\n"
 "Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n"
diff --git a/po/da.gmo b/po/da.gmo
index b2e22b7..a61d03f 100644
--- a/po/da.gmo
+++ b/po/da.gmo
Binary files differ
diff --git a/po/da.po b/po/da.po
index ae154af..cc8a269 100644
--- a/po/da.po
+++ b/po/da.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.90\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-07-16 13:26+0200\n"
 "Last-Translator: Mogens Jaeger <mogensjaeger@gmail.com>\n"
 "Language-Team: Danish <dansk@dansk-gruppen.dk>\n"
diff --git a/po/de.gmo b/po/de.gmo
index fb8747a..4d82c50 100644
--- a/po/de.gmo
+++ b/po/de.gmo
Binary files differ
diff --git a/po/de.po b/po/de.po
index d0f28dc..39ccc49 100644
--- a/po/de.po
+++ b/po/de.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-05-22 20:48+0100\n"
 "Last-Translator: Christian Kirbach <christian.kirbach@gmail.com>\n"
 "Language-Team: German <translation-team-de@lists.sourceforge.net>\n"
diff --git a/po/el.gmo b/po/el.gmo
index 6f001fa..65a16b1 100644
--- a/po/el.gmo
+++ b/po/el.gmo
Binary files differ
diff --git a/po/el.po b/po/el.po
index 7ed58d5..c9cf81a 100644
--- a/po/el.po
+++ b/po/el.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2010-11-29 11:14+0200\n"
 "Last-Translator: Michael Kotsarinis <mk73628@gmail.com>\n"
 "Language-Team: Greek <team@lists.gnome.gr>\n"
diff --git a/po/en_GB.gmo b/po/en_GB.gmo
index 2b73ab0..bd9994e 100644
--- a/po/en_GB.gmo
+++ b/po/en_GB.gmo
Binary files differ
diff --git a/po/en_GB.po b/po/en_GB.po
index 2268cb9..84bedbe 100644
--- a/po/en_GB.po
+++ b/po/en_GB.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.8.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2004-04-26 10:36-0400\n"
 "Last-Translator: Gareth Owen <gowen72@yahoo.com>\n"
 "Language-Team: English (British) <en_gb@li.org>\n"
diff --git a/po/eo.gmo b/po/eo.gmo
index 4cf9dfa..bbfd853 100644
--- a/po/eo.gmo
+++ b/po/eo.gmo
Binary files differ
diff --git a/po/eo.po b/po/eo.po
index bf6ac8c..28b0a1f 100644
--- a/po/eo.po
+++ b/po/eo.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2011-06-04 21:11+0100\n"
 "Last-Translator: Kristjan SCHMIDT <kristjan.schmidt@googlemail.com>\n"
 "Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n"
diff --git a/po/es.gmo b/po/es.gmo
index 7a1d2ef..3b0c42f 100644
--- a/po/es.gmo
+++ b/po/es.gmo
Binary files differ
diff --git a/po/es.po b/po/es.po
index ccdb46a..b0e6f02 100644
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2011-10-02 15:45+0200\n"
 "Last-Translator: Jorge González González <aloriel@gmail.com>\n"
 "Language-Team: Spanish <es@li.org>\n"
diff --git a/po/eu.gmo b/po/eu.gmo
index 3b8725b..d28bf36 100644
--- a/po/eu.gmo
+++ b/po/eu.gmo
Binary files differ
diff --git a/po/eu.po b/po/eu.po
index ade2da4..813dc22 100644
--- a/po/eu.po
+++ b/po/eu.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-0.10.26.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2010-03-25 13:10+0100\n"
 "Last-Translator: Mikel Olasagasti Uranga <hey_neken@mundurat.net>\n"
 "Language-Team: Basque <translation-team-eu@lists.sourceforge.net>\n"
diff --git a/po/fi.gmo b/po/fi.gmo
index 6bfa2a0..ab4f351 100644
--- a/po/fi.gmo
+++ b/po/fi.gmo
Binary files differ
diff --git a/po/fi.po b/po/fi.po
index fbad53c..e51187c 100644
--- a/po/fi.po
+++ b/po/fi.po
@@ -12,7 +12,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2010-11-17 23:10+0200\n"
 "Last-Translator: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>\n"
 "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n"
diff --git a/po/fr.gmo b/po/fr.gmo
index 74580aa..a54c667 100644
--- a/po/fr.gmo
+++ b/po/fr.gmo
Binary files differ
diff --git a/po/fr.po b/po/fr.po
index 6388614..7caaf89 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2012-12-05 19:31+0100\n"
 "Last-Translator: Claude Paroz <claude@2xlibre.net>\n"
 "Language-Team: French <traduc@traduc.org>\n"
diff --git a/po/gl.gmo b/po/gl.gmo
index d5d440c..44ba827 100644
--- a/po/gl.gmo
+++ b/po/gl.gmo
Binary files differ
diff --git a/po/gl.po b/po/gl.po
index bb81325..ec6f1db 100644
--- a/po/gl.po
+++ b/po/gl.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2012-12-15 03:29+0200\n"
 "Last-Translator: Fran Dieguez <frandieguez@ubuntu.com>\n"
 "Language-Team: Galician <proxecto@trasno.net>\n"
diff --git a/po/gstreamer-1.0.pot b/po/gstreamer-1.0.pot
index cb36256..c644c19 100644
--- a/po/gstreamer-1.0.pot
+++ b/po/gstreamer-1.0.pot
@@ -6,9 +6,9 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: gstreamer 1.4.1\n"
+"Project-Id-Version: gstreamer 1.4.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -1230,7 +1230,7 @@
 msgid "force caps without doing a typefind"
 msgstr ""
 
-#: plugins/elements/gsttypefindelement.c:1056
+#: plugins/elements/gsttypefindelement.c:1055
 msgid "Stream contains no data."
 msgstr ""
 
diff --git a/po/hr.gmo b/po/hr.gmo
index f99c088..1a87a40 100644
--- a/po/hr.gmo
+++ b/po/hr.gmo
Binary files differ
diff --git a/po/hr.po b/po/hr.po
index e2385db..8548899 100644
--- a/po/hr.po
+++ b/po/hr.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.32.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2012-05-25 16:47+0200\n"
 "Last-Translator: Tomislav Krznar <tomislav.krznar@gmail.com>\n"
 "Language-Team: Croatian <lokalizacija@linux.hr>\n"
diff --git a/po/hu.gmo b/po/hu.gmo
index 6fdb73f..46c48a0 100644
--- a/po/hu.gmo
+++ b/po/hu.gmo
Binary files differ
diff --git a/po/hu.po b/po/hu.po
index 9d2a3f5..df08d84 100644
--- a/po/hu.po
+++ b/po/hu.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-05-23 21:08+0200\n"
 "Last-Translator: Balázs Úr <urbalazs@gmail.com>\n"
 "Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n"
diff --git a/po/id.gmo b/po/id.gmo
index 759f8fe..92bb184 100644
--- a/po/id.gmo
+++ b/po/id.gmo
Binary files differ
diff --git a/po/id.po b/po/id.po
index 5ed5ccf..95f442d 100644
--- a/po/id.po
+++ b/po/id.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-05-31 22:06+0700\n"
 "Last-Translator: Andhika Padmawan <andhika.padmawan@gmail.com>\n"
 "Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n"
diff --git a/po/it.gmo b/po/it.gmo
index 3a5c86f..cdd6515 100644
--- a/po/it.gmo
+++ b/po/it.gmo
Binary files differ
diff --git a/po/it.po b/po/it.po
index f8b04e2..9970ce6 100644
--- a/po/it.po
+++ b/po/it.po
@@ -106,7 +106,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2010-10-25 10:03+0200\n"
 "Last-Translator: Luca Ferretti <elle.uca@infinito.it>\n"
 "Language-Team: Italian <tp@lists.linux.it>\n"
diff --git a/po/ja.gmo b/po/ja.gmo
index 6c08119..3dd4991 100644
--- a/po/ja.gmo
+++ b/po/ja.gmo
Binary files differ
diff --git a/po/ja.po b/po/ja.po
index 2399e68..71fbf10 100644
--- a/po/ja.po
+++ b/po/ja.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.0.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2013-08-20 14:56+0900\n"
 "Last-Translator: Makoto Kato <makoto.kt@gmail.com>\n"
 "Language-Team: Japanese <translation-team-ja@lists.sourceforge.net>\n"
diff --git a/po/lt.gmo b/po/lt.gmo
index 351e976..216c311 100644
--- a/po/lt.gmo
+++ b/po/lt.gmo
Binary files differ
diff --git a/po/lt.po b/po/lt.po
index 34620f8..a3681e9 100644
--- a/po/lt.po
+++ b/po/lt.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.29.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2010-07-16 00:50+0300\n"
 "Last-Translator: Žygimantas Beručka <uid0@akl.lt>\n"
 "Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n"
diff --git a/po/nb.gmo b/po/nb.gmo
index 97d89c1..2d0e2c7 100644
--- a/po/nb.gmo
+++ b/po/nb.gmo
Binary files differ
diff --git a/po/nb.po b/po/nb.po
index fa52198..6643753 100644
--- a/po/nb.po
+++ b/po/nb.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.30.3\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2010-10-24 21:36+0200\n"
 "Last-Translator: Kjartan Maraas <kmaraas@gnome.org>\n"
 "Language-Team: Norwegian Bokmaal <i18n-nb@lister.ping.uio.no>\n"
diff --git a/po/nl.gmo b/po/nl.gmo
index f7375d4..66b9fc8 100644
--- a/po/nl.gmo
+++ b/po/nl.gmo
Binary files differ
diff --git a/po/nl.po b/po/nl.po
index 930ddf9..73a7bb7 100644
--- a/po/nl.po
+++ b/po/nl.po
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-05-22 00:46+0200\n"
 "Last-Translator: Freek de Kruijf <f.de.kruijf@gmail.com>\n"
 "Language-Team: Dutch <vertaling@vrijschrift.org>\n"
diff --git a/po/pl.gmo b/po/pl.gmo
index 787f44b..911a5b8 100644
--- a/po/pl.gmo
+++ b/po/pl.gmo
Binary files differ
diff --git a/po/pl.po b/po/pl.po
index 7f8ea5d..43dc89c 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-05-22 18:22+0200\n"
 "Last-Translator: Jakub Bogusz <qboosh@pld-linux.org>\n"
 "Language-Team: Polish <translation-team-pl@lists.sourceforge.net>\n"
diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo
index a8ac519..73be4fb 100644
--- a/po/pt_BR.gmo
+++ b/po/pt_BR.gmo
Binary files differ
diff --git a/po/pt_BR.po b/po/pt_BR.po
index 3d9f9d6..4397600 100644
--- a/po/pt_BR.po
+++ b/po/pt_BR.po
@@ -17,7 +17,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2013-12-29 18:20-0200\n"
 "Last-Translator: Fabrício Godoy <skarllot@gmail.com>\n"
 "Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge."
diff --git a/po/ro.gmo b/po/ro.gmo
index cdbddae..286a3f3 100644
--- a/po/ro.gmo
+++ b/po/ro.gmo
Binary files differ
diff --git a/po/ro.po b/po/ro.po
index f7f0a24..7929c5d 100644
--- a/po/ro.po
+++ b/po/ro.po
@@ -5,7 +5,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.29.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2010-08-16 01:10+0300\n"
 "Last-Translator: Lucian Adrian Grijincu <lucian.grijincu@gmail.com>\n"
 "Language-Team: Romanian <translation-team-ro@lists.sourceforge.net>\n"
diff --git a/po/ru.gmo b/po/ru.gmo
index 4c944cf..b651461 100644
--- a/po/ru.gmo
+++ b/po/ru.gmo
Binary files differ
diff --git a/po/ru.po b/po/ru.po
index 80bd2a1..bc5f275 100644
--- a/po/ru.po
+++ b/po/ru.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-05-22 20:12+0400\n"
 "Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n"
 "Language-Team: Russian <gnu@mx.ru>\n"
diff --git a/po/rw.gmo b/po/rw.gmo
index 6dcbaca..eccfb39 100644
--- a/po/rw.gmo
+++ b/po/rw.gmo
Binary files differ
diff --git a/po/rw.po b/po/rw.po
index a4bfe27..5225bb4 100644
--- a/po/rw.po
+++ b/po/rw.po
@@ -15,7 +15,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.8.8\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2005-04-04 10:55-0700\n"
 "Last-Translator: Steven Michael Murphy <murf@e-tools.com>\n"
 "Language-Team: Kinyarwanda <translation-team-rw@lists.sourceforge.net>\n"
diff --git a/po/sk.gmo b/po/sk.gmo
index 62ae8f7..59cf89b 100644
--- a/po/sk.gmo
+++ b/po/sk.gmo
Binary files differ
diff --git a/po/sk.po b/po/sk.po
index dbd7f63..7bd10b1 100644
--- a/po/sk.po
+++ b/po/sk.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-01-30 10:24+0100\n"
 "Last-Translator: Peter Tuhársky <tuharsky@misbb.sk>\n"
 "Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
diff --git a/po/sl.gmo b/po/sl.gmo
index 17a85ff..4c09ddb 100644
--- a/po/sl.gmo
+++ b/po/sl.gmo
Binary files differ
diff --git a/po/sl.po b/po/sl.po
index 1db9eb8..fe4b9d7 100644
--- a/po/sl.po
+++ b/po/sl.po
@@ -10,7 +10,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-1.2.1\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-04-09 22:38+0100\n"
 "Last-Translator: Klemen Košir <klemen913@gmail.com>\n"
 "Language-Team: Slovenian <translation-team-sl@lists.sourceforge.net>\n"
diff --git a/po/sq.gmo b/po/sq.gmo
index 2f01d9d..0a6a5e6 100644
--- a/po/sq.gmo
+++ b/po/sq.gmo
Binary files differ
diff --git a/po/sq.po b/po/sq.po
index 31d9404..f568bc6 100644
--- a/po/sq.po
+++ b/po/sq.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.8.4\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2004-08-07 23:46+0200\n"
 "Last-Translator: Laurent Dhima <laurenti@alblinux.net>\n"
 "Language-Team: Albanian <begraj@hotmail.com>\n"
diff --git a/po/sr.gmo b/po/sr.gmo
index 604a34b..c6ecd38 100644
--- a/po/sr.gmo
+++ b/po/sr.gmo
Binary files differ
diff --git a/po/sr.po b/po/sr.po
index 0e1ba15..bcdb0b2 100644
--- a/po/sr.po
+++ b/po/sr.po
@@ -7,7 +7,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer-1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-06-18 20:12+0200\n"
 "Last-Translator: Мирослав Николић <miroslavnikolic@rocketmail.com>\n"
 "Language-Team: Serbian <(nothing)>\n"
diff --git a/po/sv.gmo b/po/sv.gmo
index 551a4dc..18b1ae2 100644
--- a/po/sv.gmo
+++ b/po/sv.gmo
Binary files differ
diff --git a/po/sv.po b/po/sv.po
index ae816a5..96f9c45 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.90\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-07-11 02:52+0200\n"
 "Last-Translator: Sebastian Rasmussen <sebras@gmail.com>\n"
 "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
diff --git a/po/tr.gmo b/po/tr.gmo
index 895c175..0be37fe 100644
--- a/po/tr.gmo
+++ b/po/tr.gmo
Binary files differ
diff --git a/po/tr.po b/po/tr.po
index f03652c..ee4d290 100644
--- a/po/tr.po
+++ b/po/tr.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.8.0\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2004-04-03 03:14+0300\n"
 "Last-Translator: Baris Cicek <baris@teamforce.name.tr>\n"
 "Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n"
diff --git a/po/uk.gmo b/po/uk.gmo
index a764924..b0ccca6 100644
--- a/po/uk.gmo
+++ b/po/uk.gmo
Binary files differ
diff --git a/po/uk.po b/po/uk.po
index 938122f..c56a617 100644
--- a/po/uk.po
+++ b/po/uk.po
@@ -8,7 +8,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-05-22 07:45+0300\n"
 "Last-Translator: Yuri Chornoivan <yurchor@ukr.net>\n"
 "Language-Team: Ukrainian <translation-team-uk@lists.sourceforge.net>\n"
diff --git a/po/vi.gmo b/po/vi.gmo
index be864b6..9068a09 100644
--- a/po/vi.gmo
+++ b/po/vi.gmo
Binary files differ
diff --git a/po/vi.po b/po/vi.po
index 576038e..a5af5dd 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -9,7 +9,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.90\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-06-30 09:40+0700\n"
 "Last-Translator: Trần Ngọc Quân <vnwildman@gmail.com>\n"
 "Language-Team: Vietnamese <translation-team-vi@lists.sourceforge.net>\n"
diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo
index be72340..4c83d0a 100644
--- a/po/zh_CN.gmo
+++ b/po/zh_CN.gmo
Binary files differ
diff --git a/po/zh_CN.po b/po/zh_CN.po
index 53f3368..8a8542a 100644
--- a/po/zh_CN.po
+++ b/po/zh_CN.po
@@ -6,7 +6,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 0.10.25.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2010-02-02 18:58+0800\n"
 "Last-Translator: Ji ZhengYu <zhengyuji@gmail.com>\n"
 "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n"
diff --git a/po/zh_TW.gmo b/po/zh_TW.gmo
index 72021d5..68f75a6 100644
--- a/po/zh_TW.gmo
+++ b/po/zh_TW.gmo
Binary files differ
diff --git a/po/zh_TW.po b/po/zh_TW.po
index b84d599..30144d7 100644
--- a/po/zh_TW.po
+++ b/po/zh_TW.po
@@ -27,7 +27,7 @@
 msgstr ""
 "Project-Id-Version: gstreamer 1.3.2\n"
 "Report-Msgid-Bugs-To: http://bugzilla.gnome.org/\n"
-"POT-Creation-Date: 2014-08-27 14:17+0300\n"
+"POT-Creation-Date: 2014-09-19 10:41+0300\n"
 "PO-Revision-Date: 2014-06-08 00:22+0800\n"
 "Last-Translator: Wen Liao <wen.cf83@gmail.com>\n"
 "Language-Team: Chinese (traditional) <zh-l10n@linux.org.tw>\n"
diff --git a/win32/common/config.h b/win32/common/config.h
index 928b841..980e128 100644
--- a/win32/common/config.h
+++ b/win32/common/config.h
@@ -62,7 +62,7 @@
 #define GST_PACKAGE_ORIGIN "Unknown package origin"
 
 /* GStreamer package release date/time for plugins as YYYY-MM-DD */
-#define GST_PACKAGE_RELEASE_DATETIME "2014-08-27"
+#define GST_PACKAGE_RELEASE_DATETIME "2014-09-19"
 
 /* Define if static plugins should be built */
 #undef GST_PLUGIN_BUILD_STATIC
@@ -354,7 +354,7 @@
 #define PACKAGE_NAME "GStreamer"
 
 /* Define to the full name and version of this package. */
-#define PACKAGE_STRING "GStreamer 1.4.1"
+#define PACKAGE_STRING "GStreamer 1.4.2"
 
 /* Define to the one symbol short name of this package. */
 #define PACKAGE_TARNAME "gstreamer"
@@ -363,7 +363,7 @@
 #undef PACKAGE_URL
 
 /* Define to the version of this package. */
-#define PACKAGE_VERSION "1.4.1"
+#define PACKAGE_VERSION "1.4.2"
 
 /* directory where plugins are located */
 #ifdef _DEBUG
@@ -401,7 +401,7 @@
 #undef USE_POISONING
 
 /* Version number of package */
-#define VERSION "1.4.1"
+#define VERSION "1.4.2"
 
 /* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
    significant byte first (like Motorola and SPARC, unlike Intel). */
diff --git a/win32/common/gstversion.h b/win32/common/gstversion.h
index 7f9f029..381d6ca 100644
--- a/win32/common/gstversion.h
+++ b/win32/common/gstversion.h
@@ -57,7 +57,7 @@
  *
  * The micro version of GStreamer at compile time:
  */
-#define GST_VERSION_MICRO (1)
+#define GST_VERSION_MICRO (2)
 /**
  * GST_VERSION_NANO:
  *