Hello community, here is the log from the commit of package libnice for openSUSE:Factory checked in at 2015-04-27 12:58:09 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/libnice (Old) and /work/SRC/openSUSE:Factory/.libnice.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "libnice" Changes: -------- --- /work/SRC/openSUSE:Factory/libnice/libnice.changes 2015-04-23 08:00:47.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.libnice.new/libnice.changes 2015-04-27 12:58:10.000000000 +0200 @@ -1,0 +2,8 @@ +Thu Apr 23 14:45:42 UTC 2015 - [email protected] + +- Update to version 0.1.12: + + Fix regression in SDP parser. + + Make examples work on Windows. + + Bug fixes on nicesrc. + +------------------------------------------------------------------- Old: ---- libnice-0.1.11.tar.gz New: ---- libnice-0.1.12.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ libnice.spec ++++++ --- /var/tmp/diff_new_pack.dLd8QZ/_old 2015-04-27 12:58:10.000000000 +0200 +++ /var/tmp/diff_new_pack.dLd8QZ/_new 2015-04-27 12:58:10.000000000 +0200 @@ -17,7 +17,7 @@ Name: libnice -Version: 0.1.11 +Version: 0.1.12 Release: 0 Summary: Interactive Connectivity Establishment implementation License: MPL-1.1 or LGPL-2.1 ++++++ libnice-0.1.11.tar.gz -> libnice-0.1.12.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnice-0.1.11/NEWS new/libnice-0.1.12/NEWS --- old/libnice-0.1.11/NEWS 2015-04-20 23:15:58.000000000 +0200 +++ new/libnice-0.1.12/NEWS 2015-04-23 03:07:54.000000000 +0200 @@ -1,3 +1,9 @@ +libnice 0.1.12 (2015-04-22) +=========================== +Fix regression in SDP parser +Make examples work on Windows +Bug fixes on nicesrc + libnice 0.1.11 (2015-04-20) =========================== API: nice_agent_set_local_credentials() for WebRTC diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnice-0.1.11/agent/agent.c new/libnice-0.1.12/agent/agent.c --- old/libnice-0.1.11/agent/agent.c 2015-04-20 22:08:15.000000000 +0200 +++ new/libnice-0.1.12/agent/agent.c 2015-04-23 02:58:39.000000000 +0200 @@ -5533,7 +5533,7 @@ if (include_non_ice) { NiceAddress rtp, rtcp; - gchar ip4[INET6_ADDRSTRLEN]; + gchar ip4[INET6_ADDRSTRLEN] = ""; nice_address_init (&rtp); nice_address_set_ipv4 (&rtp, 0); @@ -5654,7 +5654,7 @@ { Stream *current_stream = NULL; gchar **sdp_lines = NULL; - GSList *l, *stream_item; + GSList *l, *stream_item = NULL; gint i; gint ret = 0; @@ -5673,11 +5673,12 @@ } sdp_lines = g_strsplit (sdp, "\n", 0); - stream_item = agent->streams; - current_stream = stream_item->data; for (i = 0; sdp_lines && sdp_lines[i]; i++) { if (g_str_has_prefix (sdp_lines[i], "m=")) { - stream_item = stream_item->next; + if (stream_item == NULL) + stream_item = agent->streams; + else + stream_item = stream_item->next; if (!stream_item) { g_critical("More streams in SDP than in agent"); ret = -1; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnice-0.1.11/configure new/libnice-0.1.12/configure --- old/libnice-0.1.11/configure 2015-04-20 23:24:32.000000000 +0200 +++ new/libnice-0.1.12/configure 2015-04-23 03:10:37.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for libnice 0.1.11. +# Generated by GNU Autoconf 2.69 for libnice 0.1.12. # # # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc. @@ -587,8 +587,8 @@ # Identity of this package. PACKAGE_NAME='libnice' PACKAGE_TARNAME='libnice' -PACKAGE_VERSION='0.1.11' -PACKAGE_STRING='libnice 0.1.11' +PACKAGE_VERSION='0.1.12' +PACKAGE_STRING='libnice 0.1.12' PACKAGE_BUGREPORT='' PACKAGE_URL='' @@ -1405,7 +1405,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 libnice 0.1.11 to adapt to many kinds of systems. +\`configure' configures libnice 0.1.12 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1476,7 +1476,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libnice 0.1.11:";; + short | recursive ) echo "Configuration of libnice 0.1.12:";; esac cat <<\_ACEOF @@ -1618,7 +1618,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libnice configure 0.1.11 +libnice configure 0.1.12 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2037,7 +2037,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libnice $as_me 0.1.11, which was +It was created by libnice $as_me 0.1.12, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -3016,7 +3016,7 @@ # Define the identity of the package. PACKAGE='libnice' - VERSION='0.1.11' + VERSION='0.1.12' cat >>confdefs.h <<_ACEOF @@ -3121,7 +3121,7 @@ # If there was an incompatible interface change: # Increment CURRENT. Set AGE and REVISION to 0 LIBNICE_CURRENT=16 -LIBNICE_REVISION=0 +LIBNICE_REVISION=1 LIBNICE_AGE=6 LIBNICE_LIBVERSION=${LIBNICE_CURRENT}:${LIBNICE_REVISION}:${LIBNICE_AGE} LIBNICE_LT_LDFLAGS="-version-info ${LIBNICE_LIBVERSION} -no-undefined" @@ -16643,7 +16643,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libnice $as_me 0.1.11, which was +This file was extended by libnice $as_me 0.1.12, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -16709,7 +16709,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -libnice config.status 0.1.11 +libnice config.status 0.1.12 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnice-0.1.11/configure.ac new/libnice-0.1.12/configure.ac --- old/libnice-0.1.11/configure.ac 2015-04-20 23:23:38.000000000 +0200 +++ new/libnice-0.1.12/configure.ac 2015-04-23 03:10:30.000000000 +0200 @@ -5,7 +5,7 @@ dnl also use -Werror. git and pre-releases default to -Werror dnl use a three digit version number for releases, and four for cvs/prerelease -AC_INIT([libnice],[0.1.11]) +AC_INIT([libnice],[0.1.12]) LIBNICE_RELEASE="yes" AC_CANONICAL_TARGET @@ -40,7 +40,7 @@ # If there was an incompatible interface change: # Increment CURRENT. Set AGE and REVISION to 0 LIBNICE_CURRENT=16 -LIBNICE_REVISION=0 +LIBNICE_REVISION=1 LIBNICE_AGE=6 LIBNICE_LIBVERSION=${LIBNICE_CURRENT}:${LIBNICE_REVISION}:${LIBNICE_AGE} LIBNICE_LT_LDFLAGS="-version-info ${LIBNICE_LIBVERSION} -no-undefined" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnice-0.1.11/examples/sdp-example.c new/libnice-0.1.12/examples/sdp-example.c --- old/libnice-0.1.11/examples/sdp-example.c 2014-10-09 21:28:21.000000000 +0200 +++ new/libnice-0.1.12/examples/sdp-example.c 2015-04-23 02:58:46.000000000 +0200 @@ -41,10 +41,11 @@ #include <stdio.h> #include <string.h> #include <ctype.h> -#include <unistd.h> #include <agent.h> +#include <gio/gnetworking.h> + static GMainLoop *gloop; static gchar *stun_addr = NULL; static guint stun_port; @@ -95,6 +96,7 @@ #if !GLIB_CHECK_VERSION(2, 36, 0) g_type_init(); #endif + g_networking_init(); gloop = g_main_loop_new(NULL, FALSE); @@ -119,8 +121,12 @@ gchar *line = NULL; gchar *sdp, *sdp64; +#ifdef G_OS_WIN32 + io_stdin = g_io_channel_win32_new(_fileno(stdin)); +#else io_stdin = g_io_channel_unix_new(fileno(stdin)); - g_io_channel_set_flags (io_stdin, G_IO_FLAG_NONBLOCK, NULL); +#endif + g_io_channel_set_flags(io_stdin, G_IO_FLAG_NONBLOCK, NULL); // Create the nice agent agent = nice_agent_new(g_main_loop_get_context (gloop), @@ -198,7 +204,7 @@ g_free (sdp); g_free (line); } else if (s == G_IO_STATUS_AGAIN) { - usleep (100000); + g_usleep (100000); } } @@ -223,7 +229,7 @@ printf("> "); fflush (stdout); } else if (s == G_IO_STATUS_AGAIN) { - usleep (100000); + g_usleep (100000); } else { // Ctrl-D was pressed. nice_agent_send(agent, stream_id, 1, 1, "\0"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnice-0.1.11/examples/simple-example.c new/libnice-0.1.12/examples/simple-example.c --- old/libnice-0.1.11/examples/simple-example.c 2014-10-09 21:28:21.000000000 +0200 +++ new/libnice-0.1.12/examples/simple-example.c 2015-04-23 02:58:46.000000000 +0200 @@ -42,8 +42,11 @@ #include <string.h> #include <ctype.h> +#include <gio/gnetworking.h> + #include <agent.h> + static GMainLoop *gloop; static GIOChannel* io_stdin; static guint stream_id; @@ -104,9 +107,14 @@ #if !GLIB_CHECK_VERSION(2, 36, 0) g_type_init(); #endif + g_networking_init(); gloop = g_main_loop_new(NULL, FALSE); +#ifdef G_OS_WIN32 + io_stdin = g_io_channel_win32_new(_fileno(stdin)); +#else io_stdin = g_io_channel_unix_new(fileno(stdin)); +#endif // Create the nice agent agent = nice_agent_new(g_main_loop_get_context (gloop), diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnice-0.1.11/examples/threaded-example.c new/libnice-0.1.12/examples/threaded-example.c --- old/libnice-0.1.11/examples/threaded-example.c 2014-10-09 21:28:21.000000000 +0200 +++ new/libnice-0.1.12/examples/threaded-example.c 2015-04-23 02:58:46.000000000 +0200 @@ -41,10 +41,11 @@ #include <stdio.h> #include <string.h> #include <ctype.h> -#include <unistd.h> #include <agent.h> +#include <gio/gnetworking.h> + static GMainLoop *gloop; static gchar *stun_addr = NULL; static guint stun_port; @@ -104,6 +105,7 @@ #if !GLIB_CHECK_VERSION(2, 36, 0) g_type_init(); #endif + g_networking_init(); gloop = g_main_loop_new(NULL, FALSE); @@ -129,7 +131,11 @@ gchar *line = NULL; int rval; +#ifdef G_OS_WIN32 + io_stdin = g_io_channel_win32_new(_fileno(stdin)); +#else io_stdin = g_io_channel_unix_new(fileno(stdin)); +#endif g_io_channel_set_flags (io_stdin, G_IO_FLAG_NONBLOCK, NULL); // Create the nice agent @@ -202,7 +208,7 @@ } g_free (line); } else if (s == G_IO_STATUS_AGAIN) { - usleep (100000); + g_usleep (100000); } } @@ -238,7 +244,7 @@ printf("> "); fflush (stdout); } else if (s == G_IO_STATUS_AGAIN) { - usleep (100000); + g_usleep (100000); } else { // Ctrl-D was pressed. nice_agent_send(agent, stream_id, 1, 1, "\0"); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/libnice-0.1.11/gst/gstnicesrc.c new/libnice-0.1.12/gst/gstnicesrc.c --- old/libnice-0.1.11/gst/gstnicesrc.c 2015-04-20 21:36:05.000000000 +0200 +++ new/libnice-0.1.12/gst/gstnicesrc.c 2015-04-20 23:38:31.000000000 +0200 @@ -205,9 +205,10 @@ buffer = gst_buffer_new_and_alloc (len); memcpy (GST_BUFFER_DATA (buffer), buf, len); #endif + GST_OBJECT_LOCK (nicesrc); g_queue_push_tail (nicesrc->outbufs, buffer); - g_main_loop_quit (nicesrc->mainloop); + GST_OBJECT_UNLOCK (nicesrc); } static gboolean @@ -285,12 +286,15 @@ return GST_FLOW_WRONG_STATE; #endif } - GST_OBJECT_UNLOCK (basesrc); - - if (g_queue_is_empty (nicesrc->outbufs)) + if (g_queue_is_empty (nicesrc->outbufs)) { + GST_OBJECT_UNLOCK (basesrc); g_main_loop_run (nicesrc->mainloop); + GST_OBJECT_LOCK (basesrc); + } *buffer = g_queue_pop_head (nicesrc->outbufs); + GST_OBJECT_UNLOCK (basesrc); + if (*buffer != NULL) { GST_LOG_OBJECT (nicesrc, "Got buffer, pushing"); return GST_FLOW_OK; @@ -421,13 +425,8 @@ "Trying to start Nice source without a component set"); return GST_STATE_CHANGE_FAILURE; } - else - { - nice_agent_attach_recv (src->agent, src->stream_id, src->component_id, - src->mainctx, gst_nice_src_read_callback, (gpointer) src); - } break; - case GST_STATE_CHANGE_READY_TO_NULL: + case GST_STATE_CHANGE_PAUSED_TO_READY: nice_agent_attach_recv (src->agent, src->stream_id, src->component_id, src->mainctx, NULL, NULL); GST_OBJECT_LOCK (src); @@ -438,7 +437,7 @@ case GST_STATE_CHANGE_READY_TO_PAUSED: case GST_STATE_CHANGE_PAUSED_TO_PLAYING: case GST_STATE_CHANGE_PLAYING_TO_PAUSED: - case GST_STATE_CHANGE_PAUSED_TO_READY: + case GST_STATE_CHANGE_READY_TO_NULL: default: break; } @@ -446,6 +445,20 @@ ret = GST_ELEMENT_CLASS (gst_nice_src_parent_class)->change_state (element, transition); + switch (transition) { + case GST_STATE_CHANGE_READY_TO_PAUSED: + nice_agent_attach_recv (src->agent, src->stream_id, src->component_id, + src->mainctx, gst_nice_src_read_callback, (gpointer) src); + break; + case GST_STATE_CHANGE_NULL_TO_READY: + case GST_STATE_CHANGE_PAUSED_TO_PLAYING: + case GST_STATE_CHANGE_PLAYING_TO_PAUSED: + case GST_STATE_CHANGE_PAUSED_TO_READY: + case GST_STATE_CHANGE_READY_TO_NULL: + default: + break; + } + return ret; }
