[tex-k] Re: Possible mini-bug in kpathsea/absolute.c?

Julian Gilbey jdg at polya.uklinux.net
Mon Mar 27 20:21:34 CEST 2006


On Mon, Mar 27, 2006 at 07:18:09PM +0100, Julian Gilbey wrote:
> Lines 46-53 of absolute.c contain a conditional test for AMIGA which
> says:
> 
> #ifdef AMIGA
>       /* Leading / is like `../' on Unix and DOS.  Allow Unix syntax,
>          too, though, because of possible patch programs like
>          `UnixDirsII' by Martin Scott.  */
>       && IS_DIR_SEP (*filename) || 0
> #endif /* AMIGA */
>       && (*filename == '.' && (IS_DIR_SEP (filename[1])
>                          || (filename[1] == '.' && IS_DIR_SEP (filename[2]))));
> 
> Shouldn't the line before the #endif read:
>       && IS_DIR_SEP (*filename) || 1
> so that the rest of the test can succeed, which is what the description
> says it should?
> 
>    Julian

Actually, on further thought, given that we are returning
absolute || explicit_relative, shouldn't this whole thing say:

  boolean explicit_relative
    = relative_ok
#ifdef AMIGA
      /* Leading / is like `../' on Unix and DOS.  Allow Unix syntax,
         too, though, because of possible patch programs like
         `UnixDirsII' by Martin Scott.  */
      && (IS_DIR_SEP (*filename) || 1
#endif /* AMIGA */
      && (*filename == '.' && (IS_DIR_SEP (filename[1])
                         || (filename[1] == '.' && IS_DIR_SEP (filename[2]))))
#ifdef AMIGA
       )
#endif
        ;


   Julian


More information about the tex-k mailing list