Bug#287748: nautilus-cd-burner: FTBFS (amd64/gcc-4.0):

Andreas Jochens Andreas Jochens <aj@andaco.de>, 287748@bugs.debian.org
Wed, 29 Dec 2004 22:12:39 +0100


Package: nautilus-cd-burner
Severity: normal
Tags: patch

When building 'nautilus-cd-burner' on amd64 with gcc-4.0,
I get the following error:

 g++ -DHAVE_CONFIG_H -I. -I. -I. -pthread -DORBIT2=1 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gconf/2 -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/orbit-2.0 -I/usr/include/gnome-vfs-module-2.0 -DORBIT2=1 -pthread -DXTHREADS -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/libgnome-2.0 -I/usr/include/orbit-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gconf/2 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/include/bonobo-activation-2.0 -I/usr/include/gtk-2.0 -I/usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/libglade-2.0 -I/usr/include/libxml2 -I/usr/include/libgnomeui-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/libart-2.0 -I/usr/include/libbonoboui-2.0 -DXTHREADS -pthread -DORBIT2=1 -I/usr/include/nautilus -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include -I/usr/include/gtk-2.0 -I/usr/include/gnome-vfs-2.0 -I/usr/lib/gnome-vfs-2.0/include -I/usr/lib/gtk-2.0/include -I/usr/X11R6/include -I/usr/include/atk-1.0 -I/usr/include/pango-1.0 -I/usr/include/freetype2 -I/usr/include/bonobo-activation-2.0 -I/usr/include/libbonobo-2.0 -I/usr/include/gconf/2 -I/usr/include/orbit-2.0 -I/usr/include/eel-2 -I/usr/include/libart-2.0 -I/usr/include/libgnome-2.0 -I/usr/include/libgnomeui-2.0 -I/usr/include/libxml2 -I/usr/include/gail-1.0 -I/usr/include/libglade-2.0 -I/usr/include/libgnomecanvas-2.0 -I/usr/include/libbonoboui-2.0 -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -D_REENTRANT -D_POSIX_PTHREAD_SEMANTICS -DPREFIX=\"/usr\" -DBINDIR=\"/usr/bin\" -DLIBEXECDIR=\"/usr/lib/nautilus-cd-burner\" -DSHAREDIR=\"/usr/share\" -DDATADIR=\"/usr/share/nautilus-cd-burner\" -fno-exceptions -fno-rtti -g -Wall -O2 -MT dvd_plus_rw_utils.lo -MD -MP -MF .deps/dvd_plus_rw_utils.Tpo -c dvd_plus_rw_utils.cpp  -fPIC -DPIC -o .libs/dvd_plus_rw_utils.o
transport.hxx: In constructor 'Scsi_Command::Scsi_Command(void*)':
transport.hxx:87: error: cast from 'void*' to 'int' loses precision

With the attached patch 'nautilus-cd-burner' can be compiled
on amd64 using gcc-4.0.

Regards
Andreas Jochens

diff -urN ../tmp-orig/nautilus-cd-burner-2.8.6/transport.hxx ./transport.hxx
--- ../tmp-orig/nautilus-cd-burner-2.8.6/transport.hxx	2004-09-30 23:22:18.000000000 +0200
+++ ./transport.hxx	2004-12-29 21:58:11.242998272 +0100
@@ -69,7 +69,8 @@
 
 class Scsi_Command {
 private:
-    int fd,autoclose;
+    long fd;
+    int autoclose;
     char *filename;
     struct cdrom_generic_command cgc;
     union {
@@ -84,7 +85,7 @@
 public:
     Scsi_Command()	{ fd=-1, autoclose=1; filename=NULL; }
     Scsi_Command(int f)	{ fd=f,  autoclose=0; filename=NULL; }
-    Scsi_Command(void*f){ fd=(int)f, autoclose=0; filename=NULL; }
+    Scsi_Command(void*f){ fd=(long)f, autoclose=0; filename=NULL; }
     ~Scsi_Command()	{ if (fd>=0 && autoclose) close(fd),fd=-1;
 			  if (filename) free(filename),filename=NULL;
 			}