Monday, December 30, 2019

Re: libvips 8.8.4

On Mon, Dec 30, 2019 at 04:53:06PM +0100, Stephane Guedon wrote:
> Le dimanche 29 décembre 2019, 23:56:57 CET Theo Buehler a écrit :
> > > That's a problem on my side, I will sort it and retry.
> >
> > This diff fixes it:
> >
> > Index: libvips/iofuncs/init.c
> > --- libvips/iofuncs/init.c.orig
> > +++ libvips/iofuncs/init.c
> > @@ -858,7 +858,7 @@ extract_prefix( const char *dir, const char *name
> > ) for( i = 0; i < (int) strlen( vname ); i++ )
> > if( vips_isprefix( G_DIR_SEPARATOR_S "."
> G_DIR_SEPARATOR_S,
> > vname + i ) )
> > - memcpy( vname + i, vname + i + 2,
> > + memmove( vname + i, vname + i + 2,
> > strlen( vname + i + 2 ) + 1 );
> > if( vips_ispostfix( vname, G_DIR_SEPARATOR_S "." ) )
> > vname[strlen( vname ) - 2] = '\0';
>
> I think I should not integrate it in the port, right ? I can build the
> port on my own.

On the contrary, it's an obvious bug with an obvious fix that prevents
successful builds in some environments. I think the fix should be
included in the port and also be reported upstream by someone who has an
actual interest in this port (not me).

I have tried to build it on two of my amd64 boxes and hit this backwards
memcpy every time. Apparently the same is true for Denis's main machine.
I don't know what's different on the machines where it builds.

No comments:

Post a Comment