diff --git a/common b/common index 710d453582..0546e5881d 160000 --- a/common +++ b/common @@ -1 +1 @@ -Subproject commit 710d453582f386bd76a3355617ac019561cb2039 +Subproject commit 0546e5881d1ec7137c71d35247729e28c1a4ab66 diff --git a/configure.ac b/configure.ac index 1be2af931e..83fd6efd24 100644 --- a/configure.ac +++ b/configure.ac @@ -658,8 +658,10 @@ dnl vars common to for all internal objects (core libs, elements, applications) dnl CFLAGS: dnl - src and build dirs need to be added because every piece that gets built dnl will need the GStreamer source and generated headers -GST_ALL_CXXFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CXXFLAGS) \$(ERROR_CXXFLAGS)" -GST_ALL_CFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS $GLIB_EXTRA_CFLAGS \$(GST_OPTION_CFLAGS) \$(ERROR_CFLAGS)" +dnl LIBS: XML doesn't need to be added because we don't explicitly use symbols +dnl from LibXML except for in the core library +GST_ALL_CXXFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS $(GLIB_EXTRA_CFLAGS) $XML_CFLAGS \$(GST_OPTION_CXXFLAGS) \$(ERROR_CXXFLAGS)" +GST_ALL_CFLAGS="-I\$(top_srcdir)/libs -I\$(top_srcdir) -I\$(top_builddir)/libs -I\$(top_builddir) $GLIB_CFLAGS \$(GLIB_EXTRA_CFLAGS) $XML_CFLAGS \$(GST_OPTION_CFLAGS) \$(ERROR_CFLAGS)" dnl FIXME: check if LTLIBINTL is needed everywhere dnl I presume it is given that it contains the symbols that _() stuff maps to diff --git a/libs/gst/base/gstadapter.c b/libs/gst/base/gstadapter.c index b340ecc526..7d54acf642 100644 --- a/libs/gst/base/gstadapter.c +++ b/libs/gst/base/gstadapter.c @@ -781,7 +781,7 @@ done: GList * gst_adapter_take_list (GstAdapter * adapter, gsize nbytes) { - GList *result = NULL, *tail = NULL; + GQueue queue = G_QUEUE_INIT; GstBuffer *cur; gsize hsize, skip; @@ -797,15 +797,11 @@ gst_adapter_take_list (GstAdapter * adapter, gsize nbytes) cur = gst_adapter_take_buffer (adapter, hsize); - if (result == NULL) { - result = tail = g_list_append (result, cur); - } else { - tail = g_list_append (tail, cur); - tail = g_list_next (tail); - } + g_queue_push_tail (&queue, cur); + nbytes -= hsize; } - return result; + return queue.head; } /**