Package: gnash
Version: 0.7.1-1+rmh
Severity: normal
Tags: patch upstream
The command-line parser refuses to add files of the form "a=b.swf", because
they collide with variable assignment feature:
// get the file name from the command line
while (optind < argc) {
// Some options set variables, like ip=127.0.0.1
if (strchr(argv[optind], '=')) {
dbglogfile << "Got variable option on command line!" << endl;
} else {
infiles.push_back(argv[optind]);
}
optind++;
}
However, these files are pretty common. Think of, say,
"/tmp/fetch.php?file=animation.swf". This file will be generated by the
browser/plugin but when gnash is invoked it won't play it.
According to upstream, it's safe to remove this strchr check:
http://savannah.gnu.org/bugs/?func=detailitem&item_id=17467
So this is what attached patch does.
-- System Information:
Debian Release: testing/unstable
APT prefers testing
APT policy: (500, 'testing'), (1, 'experimental')
Architecture: amd64 (x86_64)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.17-1-amd64-k8
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) (ignored: LC_ALL
set to en_US.UTF-8)
Versions of packages gnash depends on:
ii libatk1.0-0 1.12.1-1 The ATK accessibility toolkit
ii libc6 2.3.6-15 GNU C Library: Shared libraries
ii libcairo2 1.2.0-3 The Cairo 2D vector graphics libra
ii libfontconfig1 2.3.2-7 generic font configuration library
ii libgcc1 1:4.1.1-5 GCC support library
ii libgl1-mesa-glx [libgl1] 6.4.2-1 A free implementation of the OpenG
ii libglib2.0-0 2.10.3-3 The GLib library of C routines
ii libglu1-mesa [libglu1] 6.4.2-1 The OpenGL utility library (GLU)
ii libgnash0 0.7.1-1+rmh free Flash movie player - shared l
ii libgtk2.0-0 2.8.18-1 The GTK+ graphical user interface
ii libgtkglext1 1.0.6-2.1+b1 OpenGL Extension to GTK (shared li
ii libice6 1:1.0.0-3 X11 Inter-Client Exchange library
ii libjpeg62 6b-13 The Independent JPEG Group's JPEG
ii libmad0 0.15.1b-2.1 MPEG audio decoder library
ii libncurses5 5.5-2 Shared libraries for terminal hand
ii libogg0 1.1.3-2 Ogg Bitstream Library
ii libpango1.0-0 1.12.3-1+b1 Layout and rendering of internatio
ii libpng12-0 1.2.8rel-5.2 PNG library - runtime
ii libsdl-mixer1.2 1.2.6-1.1 mixer library for Simple DirectMed
ii libsdl1.2debian 1.2.10-3 Simple DirectMedia Layer
ii libslang2 2.0.6-2 The S-Lang programming library - r
ii libsm6 1:1.0.0-4 X11 Session Management library
ii libstdc++6 4.1.1-5 The GNU Standard C++ Library v3
ii libsvga1 1:1.4.3-23 console SVGA display libraries
ii libx11-6 2:1.0.0-7 X11 client-side library
ii libxcursor1 1.1.5.2-5 X cursor management library
ii libxext6 1:1.0.0-4 X11 miscellaneous extension librar
ii libxfixes3 1:3.0.1.2-4 X11 miscellaneous 'fixes' extensio
ii libxi6 1:1.0.0-5 X11 Input extension library
ii libxinerama1 1:1.0.1-4 X11 Xinerama extension library
ii libxml2 2.6.26.dfsg-3 GNOME XML library
ii libxmu6 1:1.0.1-3 X11 miscellaneous utility library
ii libxrandr2 2:1.1.0.2-4 X11 RandR extension library
ii libxrender1 1:0.9.0.2-4 X Rendering Extension client libra
ii libxt6 1:1.0.0-5 X11 toolkit intrinsics library
ii zlib1g 1:1.2.3-13 compression library - runtime
gnash recommends no packages.
-- no debconf information
diff -ur gnash-0.7.1.old/backend/gnash.cpp gnash-0.7.1/backend/gnash.cpp
--- gnash-0.7.1.old/backend/gnash.cpp 2006-08-18 22:21:21.000000000 +0200
+++ gnash-0.7.1/backend/gnash.cpp 2006-08-19 13:48:14.000000000 +0200
@@ -350,12 +350,7 @@
// get the file name from the command line
while (optind < argc) {
- // Some options set variables, like ip=127.0.0.1
- if (strchr(argv[optind], '=')) {
- dbglogfile << "Got variable option on command line!" << endl;
- } else {
- infiles.push_back(argv[optind]);
- }
+ infiles.push_back(argv[optind]);
optind++;
}
diff -ur gnash-0.7.1.old/plugin/klash/klash.cpp gnash-0.7.1/plugin/klash/klash.cpp
--- gnash-0.7.1.old/plugin/klash/klash.cpp 2006-04-25 19:14:23.000000000 +0200
+++ gnash-0.7.1/plugin/klash/klash.cpp 2006-08-19 13:49:33.000000000 +0200
@@ -377,12 +377,7 @@
// get the file name from the command line
while (optind < argc) {
- // Some options set variables, like ip=127.0.0.1
- if (strchr(argv[optind], '=')) {
- dbglogfile << "Got variable option on command line!" << endl;
- } else {
- infiles.push_back(argv[optind]);
- }
+ infiles.push_back(argv[optind]);
optind++;
}