Unable to set track number
Brought to you by:
myers_carpenter
Any attempt to set a track number results in a
Segmentation fault. Setting other tags works fine, and
if I set the track number using another program I can
view it with id3v2. Unfortunately this prevents the
program from being useful to me; a fix would be greatly
appreciated.
Logged In: NO
I've had no problems setting the track number.
But, I am suspicious of the accuracy of id3v2. I've used
other apps to set some of the fields, and, oddly enough, the
track number is *not* showing up via id3v2 if the track
number is set with another application.
Logged In: NO
I too have had this same problem. It doesn't let me set the track as well as it does not let seem to read the track information correctly.
Logged In: YES
user_id=747878
Originator: NO
I _had_ this problem, and sniffed around in the source to locate the exact issue, and found a fix which both eliminates the segmentation fault, and also, in my case at least, sets the track no.
The fix is to change the file id3v2.cpp around line no 431 to read:
// the track number for this file. In this case combine them.
char *currentTrackNum, *newTrackNum;
newTrackNum= NULL; // Add this one to properly set it to a NULL value
... // keep lines inbetween here
myFrame->Field(ID3FN_TEXT) = frameList[ii].data;
myTag.AttachFrame(myFrame);
if (newTrackNum != NULL)
{
free(newTrackNum);
}
break;
... // Add the if-clause around the free()-statement, which is the one failing...
Hope this helps!
Logged In: NO
This problem has just reared its head for me too. There was no problem with an earlier system of mine, but now with Slackware 12.0 I get this:
*** glibc detected *** id3v2: free(): invalid pointer: 0xb7f6bce0 ***
======= Backtrace: =========
/lib/libc.so.6[0xb7ce9bcd]
/lib/libc.so.6(cfree+0x90)[0xb7ced350]
id3v2[0x804bd9a]
/lib/libc.so.6(__libc_start_main+0xdc)[0xb7c9436c]
id3v2(__gxx_personality_v0+0x89)[0x8049401]
======= Memory map: ========
08048000-0804f000 r-xp 00000000 03:09 775722 /usr/local/bin/id3v2
0804f000-08051000 rw-p 00007000 03:09 775722 /usr/local/bin/id3v2
08051000-08072000 rw-p 08051000 00:00 0 [heap]
b7b00000-b7b21000 rw-p b7b00000 00:00 0
b7b21000-b7c00000 ---p b7b21000 00:00 0
b7c7c000-b7c7e000 rw-p b7c7c000 00:00 0
b7c7e000-b7dc6000 r-xp 00000000 03:02 50758 /lib/libc-2.7.so
b7dc6000-b7dc7000 r--p 00148000 03:02 50758 /lib/libc-2.7.so
b7dc7000-b7dc9000 rw-p 00149000 03:02 50758 /lib/libc-2.7.so
b7dc9000-b7dcc000 rw-p b7dc9000 00:00 0
b7dcc000-b7dd6000 r-xp 00000000 03:09 179538 /usr/lib/libgcc_s.so.1
b7dd6000-b7dd7000 rw-p 00009000 03:09 179538 /usr/lib/libgcc_s.so.1
b7dd7000-b7dfc000 r-xp 00000000 03:02 50746 /lib/libm-2.7.so
b7dfc000-b7dfe000 rw-p 00024000 03:02 50746 /lib/libm-2.7.so
b7dfe000-b7ed7000 r-xp 00000000 03:09 179666 /usr/lib/libstdc++.so.6.0.8
b7ed7000-b7eda000 r--p 000d8000 03:09 179666 /usr/lib/libstdc++.so.6.0.8
b7eda000-b7edc000 rw-p 000db000 03:09 179666 /usr/lib/libstdc++.so.6.0.8
b7edc000-b7ee2000 rw-p b7edc000 00:00 0
b7ee2000-b7f1c000 r-xp 00000000 03:09 775712 /usr/local/lib/libid3-3.8.so.3.0.0
b7f1c000-b7f1f000 rw-p 0003a000 03:09 775712 /usr/local/lib/libid3-3.8.so.3.0.0
b7f1f000-b7f32000 r-xp 00000000 03:09 179549 /usr/lib/libz.so.1.2.3
b7f32000-b7f33000 rw-p 00012000 03:09 179549 /usr/lib/libz.so.1.2.3
b7f4d000-b7f4e000 rw-p b7f4d000 00:00 0
b7f4e000-b7f4f000 r-xp b7f4e000 00:00 0 [vdso]
b7f4f000-b7f6b000 r-xp 00000000 03:02 50781 /lib/ld-2.7.so
b7f6b000-b7f6d000 rw-p 0001b000 03:02 50781 /lib/ld-2.7.so
bfd67000-bfd7c000 rw-p bffeb000 00:00 0 [stack]
Aborted