package: smilutils
version: 0.3.2+cvs20070731-4
severity: important
x-debbugs-cc: Thomas Viehmann <tv@beamnet.de>, debian-release@lists.debian.org
Hi,
ffmpeg2raw doesn't work at all with the version of smilutils in lenny.
The issue has been fixed by the 0.3.2+cvs20070731-4.1 NMU and Thomas Viehmann
has been so kind to provide a targeted patch for the lenny version, which is
attached. I've tested the patch and it works for me :-) debdiff is attached.
Since 0.3.2+cvs20070731-4.1 hasnt migrated to squeeze yet (as its part of an
ffmpeg transition going on atm), this couldnt go into 5.0.1 anyway (as smilutils
didn't migrate earlier as it was part of the ffmpeg-transition, but I'd still
like to (see it) fix(ed) for 5.0.2. SRMs, can I NMupload to s-p-u once 5.0.1
is out?
(Maintainer approved but is looking for someone to adopt the package, which
won't be me, my plate is too full already.)
$ debdiff smilutils_0.3.2+cvs20070731-4.dsc smilutils_0.3.2+cvs20070731-4+lenny1.dsc|diffstat
apps/ffmpeg2raw/ffmpeg2raw.c | 12 +++----
smilutils-0.3.2+cvs20070731/config.guess | 32 ++++++++++++-------
smilutils-0.3.2+cvs20070731/config.sub | 44 +++++++++++++++++++++++----
smilutils-0.3.2+cvs20070731/debian/changelog | 11 ++++++
4 files changed, 76 insertions(+), 23 deletions(-)
Thomas accompanied the patch with the following words:
------
Attached is a patch doing only the pointer fixes. Now the compilation
only warns about the deprecated (but still existing in lenny) ffmpeg
functions. The Again, the config.{sub,guess} changes are just an
artifact of compilation (debian/rules updates them), the "valuable"
changes are all in the ffmpeg2raw.c.
Mind you, compiler warnings like
playlist.cc:942: warning: address of local variable 'data' returned
(I saw that while idly watching compilation) are a fail-safe recipe for
segfaults, too, but I cannot fix everything. This and the segfault for
not checking strrchr's return value before passing it strncasecmp I
pointed out in my mail with the NMUdiff to the original bug report
(segfault when calling rawplay with files without extension) makes me
think that you should try to find an interested party with C skills
(i.e. not me) to look over some things.
------
regards,
Holger
diff -u smilutils-0.3.2+cvs20070731/debian/changelog smilutils-0.3.2+cvs20070731/debian/changelog
--- smilutils-0.3.2+cvs20070731/debian/changelog
+++ smilutils-0.3.2+cvs20070731/debian/changelog
@@ -1,3 +1,14 @@
+smilutils (0.3.2+cvs20070731-4+lenny1) unstable; urgency=low
+
+ * Non-maintainer upload.
+ * Backport from unstable NMU:
+ Fix the not completely ideal pointer usage in ffmpeg2raw that
+ caused some compiler warnings and also impeded testing because
+ ffmpeg2raw invariably printed "No video or audio stream found"
+ instead of actually doing something.
+
+ -- Thomas Viehmann <tv@beamnet.de> Sat, 07 Mar 2009 21:04:05 +0100
+
smilutils (0.3.2+cvs20070731-4) unstable; urgency=low
* Fix build with gcc 4.3 (closes: #455132)
diff -u smilutils-0.3.2+cvs20070731/config.sub smilutils-0.3.2+cvs20070731/config.sub
--- smilutils-0.3.2+cvs20070731/config.sub
+++ smilutils-0.3.2+cvs20070731/config.sub
@@ -1,10 +1,10 @@
#! /bin/sh
# Configuration validation subroutine script.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
-# Inc.
+# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+# Free Software Foundation, Inc.
-timestamp='2007-06-28'
+timestamp='2008-01-16'
# This file is (in principle) common to ALL GNU software.
# The presence of a machine in this file suggests that SOME GNU software
@@ -72,8 +72,8 @@
version="\
GNU config.sub ($timestamp)
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -369,10 +369,14 @@
| v850-* | v850e-* | vax-* \
| we32k-* \
| x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \
- | xstormy16-* | xtensa-* \
+ | xstormy16-* | xtensa*-* \
| ymp-* \
| z8k-*)
;;
+ # Recognize the basic CPU types without company name, with glob match.
+ xtensa*)
+ basic_machine=$basic_machine-unknown
+ ;;
# Recognize the various machine names and aliases which stand
# for a CPU type and a company and sometimes even an OS.
386bsd)
@@ -443,6 +447,14 @@
basic_machine=ns32k-sequent
os=-dynix
;;
+ blackfin)
+ basic_machine=bfin-unknown
+ os=-linux
+ ;;
+ blackfin-*)
+ basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
c90)
basic_machine=c90-cray
os=-unicos
@@ -668,6 +680,14 @@
basic_machine=m68k-isi
os=-sysv
;;
+ m68knommu)
+ basic_machine=m68k-unknown
+ os=-linux
+ ;;
+ m68knommu-*)
+ basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
m88k-omron*)
basic_machine=m88k-omron
;;
@@ -813,6 +833,14 @@
basic_machine=i860-intel
os=-osf
;;
+ parisc)
+ basic_machine=hppa-unknown
+ os=-linux
+ ;;
+ parisc-*)
+ basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
+ os=-linux
+ ;;
pbd)
basic_machine=sparc-tti
;;
@@ -1021,6 +1049,10 @@
basic_machine=tic6x-unknown
os=-coff
;;
+ tile*)
+ basic_machine=tile-unknown
+ os=-linux-gnu
+ ;;
tx39)
basic_machine=mipstx39-unknown
;;
diff -u smilutils-0.3.2+cvs20070731/config.guess smilutils-0.3.2+cvs20070731/config.guess
--- smilutils-0.3.2+cvs20070731/config.guess
+++ smilutils-0.3.2+cvs20070731/config.guess
@@ -1,10 +1,10 @@
#! /bin/sh
# Attempt to guess a canonical system name.
# Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
-# 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation,
-# Inc.
+# 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+# Free Software Foundation, Inc.
-timestamp='2007-07-22'
+timestamp='2008-01-23'
# This file is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License as published by
@@ -56,8 +56,8 @@
GNU config.guess ($timestamp)
Originally written by Per Bothner.
-Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005
-Free Software Foundation, Inc.
+Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001,
+2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -532,7 +532,7 @@
echo rs6000-ibm-aix3.2
fi
exit ;;
- *:AIX:*:[45])
+ *:AIX:*:[456])
IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
IBM_ARCH=rs6000
@@ -799,6 +799,9 @@
EM64T | authenticamd)
echo x86_64-unknown-interix${UNAME_RELEASE}
exit ;;
+ IA64)
+ echo ia64-unknown-interix${UNAME_RELEASE}
+ exit ;;
esac ;;
[345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
echo i${UNAME_MACHINE}-pc-mks
@@ -833,7 +836,14 @@
echo ${UNAME_MACHINE}-pc-minix
exit ;;
arm*:Linux:*:*)
- echo ${UNAME_MACHINE}-unknown-linux-gnu
+ eval $set_cc_for_build
+ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
+ | grep -q __ARM_EABI__
+ then
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
+ else
+ echo ${UNAME_MACHINE}-unknown-linux-gnueabi
+ fi
exit ;;
avr32*:Linux:*:*)
echo ${UNAME_MACHINE}-unknown-linux-gnu
@@ -954,8 +964,8 @@
x86_64:Linux:*:*)
echo x86_64-unknown-linux-gnu
exit ;;
- xtensa:Linux:*:*)
- echo xtensa-unknown-linux-gnu
+ xtensa*:Linux:*:*)
+ echo ${UNAME_MACHINE}-unknown-linux-gnu
exit ;;
i*86:Linux:*:*)
# The BFD linker knows what the default object file format is, so
@@ -1474,9 +1484,9 @@
the operating system you are using. It is advised that you
download the most up to date version of the config scripts from
- http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.guess
+ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
and
- http://savannah.gnu.org/cgi-bin/viewcvs/*checkout*/config/config/config.sub
+ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
If the version you run ($0) is already up to date, please
send the following data and any information you think might be
only in patch2:
unchanged:
--- smilutils-0.3.2+cvs20070731.orig/apps/ffmpeg2raw/ffmpeg2raw.c
+++ smilutils-0.3.2+cvs20070731/apps/ffmpeg2raw/ffmpeg2raw.c
@@ -136,7 +136,7 @@
for( i = 0; i < this->context->nb_streams; i++ )
{
- AVCodecContext *enc = &this->context->streams[ i ]->codec;
+ AVCodecContext *enc = this->context->streams[ i ]->codec;
switch( enc->codec_type )
{
case CODEC_TYPE_VIDEO:
@@ -155,7 +155,7 @@
if ( this->video_index >= 0 )
{
vstream = this->context->streams[ this->video_index ];
- venc = &this->context->streams[ this->video_index ]->codec;
+ venc = this->context->streams[ this->video_index ]->codec;
vcodec = avcodec_find_decoder( venc->codec_id );
fps = (double) venc->time_base.den / (double) venc->time_base.num;
if ( fps > 10000 ) fps /= 1000;
@@ -168,7 +168,7 @@
if ( this->audio_index >= 0 )
{
astream = this->context->streams[ this->audio_index ];
- aenc = &this->context->streams[ this->audio_index ]->codec;
+ aenc = this->context->streams[ this->audio_index ]->codec;
acodec = avcodec_find_decoder( aenc->codec_id );
if ( this->channels != aenc->channels && aenc->codec_id == CODEC_ID_AC3)
aenc->channels = this->channels;
@@ -235,7 +235,7 @@
while ( len > 0 )
{
- len1 = avcodec_decode_video( &vstream->codec, frame, &got_picture, ptr, len);
+ len1 = avcodec_decode_video( vstream->codec, frame, &got_picture, ptr, len);
if ( len1 < 0 )
break;
if ( got_picture )
@@ -266,7 +266,7 @@
while ( len > 0 )
{
- len1 = avcodec_decode_audio(&astream->codec, audio_buf, &data_size, ptr, len );
+ len1 = avcodec_decode_audio(astream->codec, audio_buf, &data_size, ptr, len );
len -= len1;
ptr += len1;
if ( data_size > 0 )
@@ -340,7 +340,7 @@
for(i=0;i<ic->nb_streams;i++)
{
AVStream *st = ic->streams[i];
- AVCodecContext *enc = &st->codec;
+ AVCodecContext *enc = st->codec;
AVCodec *p = avcodec_find_decoder(enc->codec_id);
if ( p )
printf("%c%d: %s\n", enc->codec_type == CODEC_TYPE_VIDEO ? 'V' : 'A', i, p->name );
Attachment:
signature.asc
Description: This is a digitally signed message part.