Package: libdvdread4 Version: 4.2.0+20120521-2 Severity: normal Dear Maintainer,
While investigating crashes in another application I noticed they were caused by libdvdread. Investigating deeper with printfs I would see: | A path: 0x7fffc8023f90 path_copy: 0x7fffc800b350 | B path: 0x7fffc8023f90 path_copy: 0x7fffc800b350 errno: 2 | C path: 0x7fffc8023f90 path_copy: 0x7fffc800b350 new_path: 0xffffffffc80a3f10 errno: 2 | D path: 0x7fffc8023f90 path_copy: 0x7fffc800b350 new_path: 0xffffffffc80a3f10 | E path: 0x7fffc8023f90 path_copy: 0x7fffc800b350 new_path: 0xffffffffc80a3f10 | F path: 0x7fffc8023f90 path_copy: 0xffffffffc80a3f10 new_path: 0xffffffffc80a3f10 | G path: 0x7fffc8023f90 path_copy: 0xffffffffc80a3f10 new_path: (nil) | | Program received signal SIGSEGV, Segmentation fault. This was caused by the piece of code (src/dvd_reader.c line 435): | #ifdef __GLIBC__ | new_path = get_current_dir_name(); | if(new_path == NULL) { | goto DVDOpen_error; | } Turns out that we don't have a prototype for get_current_dir_name as unistd.h has: | #ifdef __USE_GNU | /* Return a malloc'd string containing the current directory name. | If the environment variable `PWD' is set, and its value is correct, | that value is used. */ | extern char *get_current_dir_name (void) __THROW; | #endif In fact compiling we see: | dvd_reader.c: In function 'DVDOpen': | dvd_reader.c:437:9: warning: implicit declaration of function 'get_current_dir_name' [-Wimplicit-function-declaration] | dvd_reader.c:437:18: warning: assignment makes pointer from integer without a cast [enabled by default] So changing the start of src/dvd_reader.c to read: | #define _GNU_SOURCE + #define __USE_GNU | #include <unistd.h> Fixes the compilation warning and the error. Best regards, Peter -- Package-specific info: Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend |/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad) ||/ Name Version Architecture Description +++-======================================-========================-========================-================================================================================= ii libdvdcss2:amd64 1.2.12-dmo1 amd64 Simple foundation for reading DVDs - runtime libraries ii libdvdnav4 4.2.0+20120524-2 amd64 DVD navigation library ii libdvdread4 4.2.0+20120521-2 amd64 library for reading DVDs -- System Information: Debian Release: wheezy/sid APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'unstable'), (500, 'testing'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 3.5.4 (SMP w/4 CPU cores) Locale: LANG=en_IE.UTF-8, LC_CTYPE=en_IE.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages libdvdread4 depends on: ii libc6 2.13-35 ii multiarch-support 2.13-35 Versions of packages libdvdread4 recommends: ii libdvdnav4 4.2.0+20120524-2 Versions of packages libdvdread4 suggests: ii libdvdcss2 1.2.12-dmo1 -- no debconf information -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org