libcdio-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Libcdio-devel] 0.81 build trouble


From: Adrian Reber
Subject: Re: [Libcdio-devel] 0.81 build trouble
Date: Tue, 30 Dec 2008 17:46:05 +0100
User-agent: Mutt/1.5.18 (2008-05-17)

The commit is just missing to do the change in line 1451 like it changes
the code in 1401. In line 1401 following has been replaced:

  for ( i=0; checklist2[i].format; ++i ) {

with

   for ( i=0; i < checklist2_size; ++i ) {

This needs to be also done for line 1451 (my patch) to not rely on the
empty array element, which has been removed.

                Adrian

On Tue, Dec 30, 2008 at 11:36:23AM -0500, Rocky Bernstein wrote:
> If I read this patch correctly, a change like this was already made
> Wed, 25 Jun 2008 07 and is part of the 0.81 release. See:
> 
> http://git.savannah.gnu.org/gitweb/?p=libcdio.git;a=commitdiff;h=9c32ef00a00642c55dd20cfecd654616021b2f48
> 
> which has a the commit entry:
> 
>   sprintf's to snprintf's and check the return.
>   Turn check1list and check2list looping into a fixed constant number
> of iterations
>   rather than rely on a sentinal [sic].
> 
> As for help2man, I vaguely recall Yaakov Selkowitz mentioning
> something about this and/or some patches that have been applied since
> 0.81 that may alleviate some of the problem.
> 
> Thanks for handling libcdio packaging on Fedora.
> 
> On Tue, Dec 30, 2008 at 7:46 AM, Adrian Reber <address@hidden> wrote:
> > Hi,
> >
> > I am maintaining the libcdio RPM for Fedora and while trying to update
> > to 0.81 I discovered an error which makes it impossible to build it.
> >
> > The Fedora buildsystem is a minimal buildroot with no cdrom devices and
> > the build process goes into an endless loop because it cannot detect any
> > cdroms and when help2man tries to generate the manpages one of tools
> > (don't know which one anymore) does never end.
> >
> > Following patch fixes it for me:
> >
> > diff --git a/lib/driver/gnu_linux.c b/lib/driver/gnu_linux.c
> > index 7e2f3c4..092af0d 100644
> > --- a/lib/driver/gnu_linux.c
> > +++ b/lib/driver/gnu_linux.c
> > @@ -1448,7 +1448,7 @@ cdio_get_default_device_linux(void)
> >   /* Scan the system for CD-ROM drives.
> >      Not always 100% reliable, so use the USE_MNTENT code above first.
> >   */
> > -  for ( i=0; checklist2[i].format; ++i ) {
> > +  for ( i=0; i < checklist2_size; ++i ) {
> >     unsigned int j;
> >     for ( j=checklist2[i].num_min; j<=checklist2[i].num_max; ++j ) {
> >       if (snprintf(drive, sizeof(drive), checklist2[i].format, j) < 0)
> >
> > It seems this code part still looks for an empty element at the end of
> > the checklist2 array which does not exist anymore.
> >
> > If there is not something really wrong with my patch I will apply it for
> > the Fedora libcdio 0.81 package.
> >
> >                Adrian
> >
> >
> >
> 

                Adrian

-- 
Adrian Reber <address@hidden>            http://lisas.de/~adrian/
Someone is standing on the ethernet cable, causeing a kink in the cable




reply via email to

[Prev in Thread] Current Thread [Next in Thread]