Hello community, here is the log from the commit of package opusfile for openSUSE:Factory checked in at 2014-12-19 09:38:49 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/opusfile (Old) and /work/SRC/openSUSE:Factory/.opusfile.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "opusfile" Changes: -------- --- /work/SRC/openSUSE:Factory/opusfile/opusfile.changes 2014-02-19 07:22:08.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.opusfile.new/opusfile.changes 2014-12-19 09:37:45.000000000 +0100 @@ -1,0 +2,8 @@ +Thu Dec 18 13:05:05 UTC 2014 - zai...@opensuse.org + +- Update to version 0.6: + + Fix bugs with comment handling. + + Fix build for BSD. + + Fix bugs handling invalid and non-opus streams. + +------------------------------------------------------------------- Old: ---- opusfile-0.5.tar.gz New: ---- opusfile-0.6.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ opusfile.spec ++++++ --- /var/tmp/diff_new_pack.7kIsKX/_old 2014-12-19 09:37:46.000000000 +0100 +++ /var/tmp/diff_new_pack.7kIsKX/_new 2014-12-19 09:37:46.000000000 +0100 @@ -17,7 +17,7 @@ # Name: opusfile -Version: 0.5 +Version: 0.6 Release: 0 %define soname 0 License: BSD-3-Clause ++++++ opusfile-0.5.tar.gz -> opusfile-0.6.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opusfile-0.5/Makefile.in new/opusfile-0.6/Makefile.in --- old/opusfile-0.5/Makefile.in 2014-01-10 20:41:19.000000000 +0100 +++ new/opusfile-0.6/Makefile.in 2014-06-11 19:30:41.000000000 +0200 @@ -969,8 +969,8 @@ maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." -@HAVE_DOXYGEN_FALSE@install-data-local: @HAVE_DOXYGEN_FALSE@clean-local: +@HAVE_DOXYGEN_FALSE@install-data-local: @HAVE_DOXYGEN_FALSE@uninstall-local: clean: clean-am diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opusfile-0.5/configure new/opusfile-0.6/configure --- old/opusfile-0.5/configure 2014-01-10 20:41:19.000000000 +0100 +++ new/opusfile-0.6/configure 2014-06-11 19:30:40.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for opusfile 0.5. +# Generated by GNU Autoconf 2.69 for opusfile 0.6. # # Report bugs to <o...@xiph.org>. # @@ -590,8 +590,8 @@ # Identity of this package. PACKAGE_NAME='opusfile' PACKAGE_TARNAME='opusfile' -PACKAGE_VERSION='0.5' -PACKAGE_STRING='opusfile 0.5' +PACKAGE_VERSION='0.6' +PACKAGE_STRING='opusfile 0.6' PACKAGE_BUGREPORT='o...@xiph.org' PACKAGE_URL='' @@ -1346,7 +1346,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 opusfile 0.5 to adapt to many kinds of systems. +\`configure' configures opusfile 0.6 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1416,7 +1416,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of opusfile 0.5:";; + short | recursive ) echo "Configuration of opusfile 0.6:";; esac cat <<\_ACEOF @@ -1541,7 +1541,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -opusfile configure 0.5 +opusfile configure 0.6 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1910,7 +1910,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by opusfile $as_me 0.5, which was +It was created by opusfile $as_me 0.6, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -4288,7 +4288,7 @@ # Define the identity of the package. PACKAGE='opusfile' - VERSION='0.5' + VERSION='0.6' # Some tools Automake needs. @@ -6778,10 +6778,10 @@ x86_64-*linux*) LD="${LD-ld} -m elf_i386" ;; - powerpcle-*linux*) + powerpc64le-*linux*) LD="${LD-ld} -m elf32lppclinux" ;; - powerpc-*linux*) + powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) @@ -11718,7 +11718,7 @@ OP_LT_CURRENT=3 -OP_LT_REVISION=0 +OP_LT_REVISION=1 OP_LT_AGE=3 @@ -11897,6 +11897,64 @@ fi fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing ftime" >&5 +$as_echo_n "checking for library containing ftime... " >&6; } +if ${ac_cv_search_ftime+:} false; then : + $as_echo_n "(cached) " >&6 +else + ac_func_search_save_LIBS=$LIBS +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char ftime (); +int +main () +{ +return ftime (); + ; + return 0; +} +_ACEOF +for ac_lib in '' compat; do + if test -z "$ac_lib"; then + ac_res="none required" + else + ac_res=-l$ac_lib + LIBS="-l$ac_lib $ac_func_search_save_LIBS" + fi + if ac_fn_c_try_link "$LINENO"; then : + ac_cv_search_ftime=$ac_res +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext + if ${ac_cv_search_ftime+:} false; then : + break +fi +done +if ${ac_cv_search_ftime+:} false; then : + +else + ac_cv_search_ftime=no +fi +rm conftest.$ac_ext +LIBS=$ac_func_search_save_LIBS +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_ftime" >&5 +$as_echo "$ac_cv_search_ftime" >&6; } +ac_res=$ac_cv_search_ftime +if test "$ac_res" != no; then : + test "$ac_res" = "none required" || LIBS="$ac_res $LIBS" + +else + enable_http=no +fi + @@ -13091,7 +13149,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by opusfile $as_me 0.5, which was +This file was extended by opusfile $as_me 0.6, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -13157,7 +13215,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -opusfile config.status 0.5 +opusfile config.status 0.6 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/opusfile-0.5/configure.ac new/opusfile-0.6/configure.ac --- old/opusfile-0.5/configure.ac 2014-01-09 23:35:34.000000000 +0100 +++ new/opusfile-0.6/configure.ac 2014-06-10 00:40:26.000000000 +0200 @@ -34,7 +34,7 @@ dnl - interfaces removed -> AGE = 0 OP_LT_CURRENT=3 -OP_LT_REVISION=0 +OP_LT_REVISION=1 OP_LT_AGE=3 AC_SUBST(OP_LT_CURRENT) @@ -86,6 +86,7 @@ ) ) ) +AC_SEARCH_LIBS(ftime, [compat], , [enable_http=no]) AS_IF([test "$enable_http" != "no"], [ openssl="openssl" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opusfile-0.5/include/opusfile.h new/opusfile-0.6/include/opusfile.h --- old/opusfile-0.5/include/opusfile.h 2013-12-05 17:49:13.000000000 +0100 +++ new/opusfile-0.6/include/opusfile.h 2014-04-29 19:07:09.000000000 +0200 @@ -1453,6 +1453,10 @@ /**Get the total (compressed) size of the stream, or of an individual link in a (possibly-chained) Ogg Opus stream, including all headers and Ogg muxing overhead. + \warning If the Opus stream (or link) is concurrently multiplexed with other + logical streams (e.g., video), this returns the size of the entire stream + (or link), not just the number of bytes in the first logical Opus stream. + Returning the latter would require scanning the entire file. \param _of The \c OggOpusFile from which to retrieve the compressed size. \param _li The index of the link whose compressed size should be computed. Use a negative number to get the compressed size of the entire @@ -1537,13 +1541,22 @@ \retval #OP_EINVAL The stream was only partially open.*/ int op_current_link(const OggOpusFile *_of) OP_ARG_NONNULL(1); -/**Computes the bitrate for a given link in a (possibly chained) Ogg Opus - stream. +/**Computes the bitrate of the stream, or of an individual link in a + (possibly-chained) Ogg Opus stream. The stream must be seekable to compute the bitrate. For unseekable streams, use op_bitrate_instant() to get periodic estimates. + \warning If the Opus stream (or link) is concurrently multiplexed with other + logical streams (e.g., video), this uses the size of the entire stream (or + link) to compute the bitrate, not just the number of bytes in the first + logical Opus stream. + Returning the latter requires scanning the entire file, but this may be done + by decoding the whole file and calling op_bitrate_instant() once at the + end. + Install a trivial decoding callback with op_set_decode_callback() if you + wish to skip actual decoding during this process. \param _of The \c OggOpusFile from which to retrieve the bitrate. \param _li The index of the link whose bitrate should be computed. - USe a negative number to get the bitrate of the whole stream. + Use a negative number to get the bitrate of the whole stream. \return The bitrate on success, or a negative value on error. \retval #OP_EINVAL The stream was only partially open, the stream was not seekable, or \a _li was larger than the number of diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opusfile-0.5/m4/libtool.m4 new/opusfile-0.6/m4/libtool.m4 --- old/opusfile-0.5/m4/libtool.m4 2013-10-17 22:07:39.000000000 +0200 +++ new/opusfile-0.6/m4/libtool.m4 2014-01-23 13:34:44.000000000 +0100 @@ -1326,10 +1326,10 @@ x86_64-*linux*) LD="${LD-ld} -m elf_i386" ;; - powerpcle-*linux*) + powerpc64le-*linux*) LD="${LD-ld} -m elf32lppclinux" ;; - powerpc-*linux*) + powerpc64-*linux*) LD="${LD-ld} -m elf32ppclinux" ;; s390x-*linux*) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opusfile-0.5/package_version new/opusfile-0.6/package_version --- old/opusfile-0.5/package_version 2014-01-10 20:41:38.000000000 +0100 +++ new/opusfile-0.6/package_version 2014-06-11 19:30:54.000000000 +0200 @@ -1 +1 @@ -PACKAGE_VERSION="0.5" +PACKAGE_VERSION="0.6" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opusfile-0.5/src/info.c new/opusfile-0.6/src/info.c --- old/opusfile-0.5/src/info.c 2013-12-05 17:49:13.000000000 +0100 +++ new/opusfile-0.6/src/info.c 2014-04-29 19:07:09.000000000 +0200 @@ -28,11 +28,13 @@ } static opus_uint32 op_parse_uint32le(const unsigned char *_data){ - return _data[0]|_data[1]<<8|_data[2]<<16|_data[3]<<24; + return _data[0]|(opus_uint32)_data[1]<<8| + (opus_uint32)_data[2]<<16|(opus_uint32)_data[3]<<24; } static opus_uint32 op_parse_uint32be(const unsigned char *_data){ - return _data[3]|_data[2]<<8|_data[1]<<16|_data[0]<<24; + return _data[3]|(opus_uint32)_data[2]<<8| + (opus_uint32)_data[1]<<16|(opus_uint32)_data[0]<<24; } int opus_head_parse(OpusHead *_head,const unsigned char *_data,size_t _len){ @@ -259,10 +261,11 @@ _tags->user_comments[ncomments]=comment= (char *)_ogg_malloc(sizeof(*comment)*(tag_len+value_len+2)); if(OP_UNLIKELY(comment==NULL))return OP_EFAULT; - _tags->comment_lengths[ncomments]=tag_len+value_len+1; memcpy(comment,_tag,sizeof(*comment)*tag_len); comment[tag_len]='='; memcpy(comment+tag_len+1,_value,sizeof(*comment)*(value_len+1)); + _tags->comment_lengths[ncomments]=tag_len+value_len+1; + _tags->comments=ncomments+1; return 0; } @@ -278,6 +281,7 @@ _tags->user_comments[ncomments]=op_strdup_with_len(_comment,comment_len); if(OP_UNLIKELY(_tags->user_comments[ncomments]==NULL))return OP_EFAULT; _tags->comment_lengths[ncomments]=comment_len; + _tags->comments=ncomments+1; return 0; } @@ -560,7 +564,7 @@ i+=4; /*If one of these is set, they all must be, but colors==0 is a valid value.*/ colors_set=width!=0||height!=0||depth!=0||colors!=0; - if(width==0||height==0||depth==0&&colors_set)return OP_ENOTFORMAT; + if((width==0||height==0||depth==0)&&colors_set)return OP_ENOTFORMAT; data_length=op_parse_uint32be(_buf+i); i+=4; if(data_length>_buf_sz-i)return OP_ENOTFORMAT; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/opusfile-0.5/src/opusfile.c new/opusfile-0.6/src/opusfile.c --- old/opusfile-0.5/src/opusfile.c 2013-12-05 17:49:13.000000000 +0100 +++ new/opusfile-0.6/src/opusfile.c 2014-04-29 19:07:09.000000000 +0200 @@ -156,8 +156,8 @@ /*Save a tiny smidge of verbosity to make the code more readable.*/ static int op_seek_helper(OggOpusFile *_of,opus_int64 _offset){ if(_offset==_of->offset)return 0; - if(_of->callbacks.seek==NULL|| - (*_of->callbacks.seek)(_of->source,_offset,SEEK_SET)){ + if(_of->callbacks.seek==NULL + ||(*_of->callbacks.seek)(_of->source,_offset,SEEK_SET)){ return OP_EREAD; } _of->offset=_offset; @@ -496,30 +496,25 @@ ogg_stream_pagein(&_of->os,_og); if(OP_LIKELY(ogg_stream_packetout(&_of->os,&op)>0)){ ret=opus_head_parse(_head,op.packet,op.bytes); - /*If it's just a stream type we don't recognize, ignore it.*/ - if(ret==OP_ENOTFORMAT)continue; - /*Everything else is fatal.*/ - if(OP_UNLIKELY(ret<0))return ret; /*Found a valid Opus header. Continue setup.*/ - _of->ready_state=OP_STREAMSET; + if(OP_LIKELY(ret>=0))_of->ready_state=OP_STREAMSET; + /*If it's just a stream type we don't recognize, ignore it. + Everything else is fatal.*/ + else if(ret!=OP_ENOTFORMAT)return ret; } } /*Get the next page. No need to clamp the boundary offset against _of->end, as all errors - become OP_ENOTFORMAT.*/ + become OP_ENOTFORMAT or OP_EBADHEADER.*/ if(OP_UNLIKELY(op_get_next_page(_of,_og, OP_ADV_OFFSET(_of->offset,OP_CHUNK_SIZE))<0)){ - return OP_ENOTFORMAT; - } - /*If this page also belongs to our Opus stream, submit it and break.*/ - if(_of->ready_state==OP_STREAMSET - &&_of->os.serialno==ogg_page_serialno(_og)){ - ogg_stream_pagein(&_of->os,_og); - break; + return _of->ready_state<OP_STREAMSET?OP_ENOTFORMAT:OP_EBADHEADER; } } if(OP_UNLIKELY(_of->ready_state!=OP_STREAMSET))return OP_ENOTFORMAT; + /*If the first non-header page belonged to our Opus stream, submit it.*/ + if(_of->os.serialno==ogg_page_serialno(_og))ogg_stream_pagein(&_of->os,_og); /*Loop getting packets.*/ for(;;){ switch(ogg_stream_packetout(&_of->os,&op)){ -- To unsubscribe, e-mail: opensuse-commit+unsubscr...@opensuse.org For additional commands, e-mail: opensuse-commit+h...@opensuse.org