I wanted to build an awesome place for people to discuss module specific issues, but I don't have any more time for this, and there are much better places to discuss Perl-related issues. I'd recommend asking your question on Stack Overflow or on Perl Monks.
If you are looking for a Perl tutorial or Perl-related news, I hope these links will serve you well.
Posted on 2009-05-31 00:18:05-07 by kennethd
test fails with invalid pointer
when i run "test Audio::TagLib" in cpan shell, it ends with: t/TagLib_Ogg_FieldListMap.t ...................... ok t/TagLib_Ogg_FieldListMap_Iterator.t ............. ok t/TagLib_Ogg_File.t .............................. 1/5 *** glibc detected *** /usr/bin/perl: free() +: invalid pointer: 0x08c6c7b8 *** this only happens since dist-upgrading debian from etch -&gt; lenny. some installed package versio +ns: kenneth@enkidu:~$ dpkg -l perl *libtag* *ogg* | grep ^ii ii libogg-dev 1.1.3-4 Ogg Bitstream Library Development ii libogg-vorbis- 0.03-3+b1 perl interface to Ogg Vorbis information and ii libogg0 1.1.3-4 Ogg Bitstream Library ii liboggflac1 1.1.1-5 Free Lossless Audio Codec - runtime C librar ii libtag1-dev 1.5-3 TagLib Audio Meta-Data Library [development] ii libtag1-doc 1.5-3 TagLib Audio Meta-Data Library [documentatio ii libtag1c2a 1.5-3 TagLib Audio Meta-Data Library ii libtagc0 1.5-3 TagLib Audio Meta-Data Library (C bindings) ii oggconvert 0.3.1-3 Convert media files to free formats ii perl 5.10.0-19 Larry Wall's Practical Extraction and Report ii python-ogg 1.3+repack-2 Python interface to the Ogg library ii python-pyogg 1.3+repack-2 transitional dummy package (if there any others which are interesting, please let me know) I went ahead & force installed. Here is some output from stracing an attempt to tag an ogg file (using a perl script i wrote which +uses TagLib) access("sunra1989-05-04t01.ogg", W_OK) = 0 open("sunra1989-05-04t01.ogg", O_RDWR) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=2077310, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7ed6000 _llseek(3, 0, [0], SEEK_CUR) = 0 _llseek(3, 0, [0], SEEK_SET) = 0 read(3, "OggS\0\2\0\0\0\0\0\0\0\0X`&\16\0\0\0\0S\324'\322\1\36\1vorb"..., 4096) = 4096 _llseek(3, 4096, [4096], SEEK_SET) = 0 _llseek(3, 4096, [4096], SEEK_SET) = 0 _llseek(3, 4096, [4096], SEEK_SET) = 0 _llseek(3, 4096, [4096], SEEK_SET) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=2077310, ...}) = 0 _llseek(3, 2076672, [2076672], SEEK_SET) = 0 read(3, "N\0247;\237r\267\327\32\243y=\306\32k\254\245\371\266\353\3042\307Xz\22\251\252\252pu^\274 +"..., 4096) = 638 _llseek(3, 0, [0], SEEK_SET) = 0 read(3, "OggS\0\2\0\0\0\0\0\0\0\0X`&\16\0\0\0\0S\324'\322\1\36\1vorb"..., 4096) = 4096 open("/dev/tty", O_RDWR|O_NOCTTY|O_NONBLOCK) = 4 writev(4, [{"*** glibc detected *** "..., 23}, {"/usr/bin/perl"..., 13}, {": "..., 2}, {"free(): in +valid pointer"..., 23}, {": 0x"..., 4}, {"095d1058"..., 8}, {" ***\n"..., 5}], 7*** glibc detected + *** /usr/bin/perl: free(): invalid pointer: 0x095d1058 *** ) = 78 mmap2(NULL, 2097152, PROT_NONE, MAP_PRIVATE|MAP_ANONYMOUS|MAP_NORESERVE, -1, 0) = 0xb778c000 munmap(0xb778c000, 475136) = 0 munmap(0xb7900000, 573440) = 0 mprotect(0xb7800000, 135168, PROT_READ|PROT_WRITE) = 0 futex(0xb7e88160, FUTEX_WAIT_PRIVATE, 2, NULL^C <unfinished ...> kenneth@enkidu:/media/storage/untagged/sunra5-4-89$ an attempt to tag mp3 files fails similarly (using debian-multimedia's lame encoder, or a custom-co +piled version) access("track01.cdda.mp3", W_OK) = 0 open("track01.cdda.mp3", O_RDWR) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=8935806, ...}) = 0 mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7f33000 _llseek(3, 0, [0], SEEK_CUR) = 0 _llseek(3, 0, [0], SEEK_SET) = 0 read(3, "\377\373\220d\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096 _llseek(3, 4096, [4096], SEEK_SET) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=8935806, ...}) = 0 _llseek(3, 8933376, [8933376], SEEK_SET) = 0 read(3, "UUULAME3.98.2UUUUUUUUUUUUUUUUUUUU"..., 4096) = 2430 fstat64(3, {st_mode=S_IFREG|0644, st_size=8935806, ...}) = 0 _llseek(3, 8935806, [8935806], SEEK_SET) = 0 fstat64(3, {st_mode=S_IFREG|0644, st_size=8935806, ...}) = 0 _llseek(3, 8933376, [8933376], SEEK_SET) = 0 read(3, "UUULAME3.98.2UUUUUUUUUUUUUUUUUUUU"..., 4096) = 2430 _llseek(3, 8935806, [8935806], SEEK_SET) = 0 _llseek(3, 8935806, [8935806], SEEK_SET) = 0 _llseek(3, 8935806, [8935806], SEEK_SET) = 0 read(3, ""..., 4096) = 0 _llseek(3, 0, [0], SEEK_SET) = 0 read(3, "\377\373\220d\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096) = 4096 _llseek(3, 4096, [4096], SEEK_SET) = 0 _llseek(3, 4096, [4096], SEEK_SET) = 0 --- SIGSEGV (Segmentation fault) @ 0 (0) --- thanks for any help! with so many packages upgrading at once i am not sure whether to look at tagl +ib, perl, or debian for the problem, but all other cpan modules seem to test ok, so i figured i wo +uld start here
Direct Responses: Write a response