Hi, On Wed, Jul 25, 2007 at 05:31:46AM +0100, Martín Ferrari wrote: > On 7/24/07, Martín Ferrari <[EMAIL PROTECTED]> wrote: > > >When trying to solve this, I noticed that compiling with > >DEB_BUILD_OPTIONS=noopt (i.e. -O0) the problem goes away... So, this > >might be a gcc problem? > > OK, I found the bug. It was a incorrect check after calling strtol. > You should clear errno before calling. Now it compiles OK in sparc. > > --- libcdio-0.78.2.orig/lib/iso9660/iso9660.c > +++ libcdio-0.78.2/lib/iso9660/iso9660.c > @@ -169,6 +169,7 @@ > char num[10]; \ > memcpy(num, p_ldate->LT_FIELD, sizeof(p_ldate->LT_FIELD)); \ > num[sizeof(p_ldate->LT_FIELD)+1] = '\0'; \ > + errno = 0; \ > p_tm->TM_FIELD = strtol(num, \ > (char **)NULL, 10)+ADD_CONSTANT; \ > if (0 != errno) return false; \
At first sight (i currently lack time to look further), that looks sane. I just forwarded your message to libcdio's upstream author. I hope I'll be able to upload a new libcdio package soon. Cheers, Nicolas