--- main.c~0 2006-03-20 06:36:37.000000000 +0200 +++ main.c 2006-11-16 23:04:00.642263000 +0200 @@ -1296,7 +1296,12 @@ main (int argc, char **argv, char **envp argv[0] = concat (current_directory, "/", argv[0]); #else /* !__MSDOS__ */ if (current_directory[0] != '\0' - && argv[0] != 0 && argv[0][0] != '/' && strchr (argv[0], '/') != 0) + && argv[0] != 0 && argv[0][0] != '/' && strchr (argv[0], '/') != 0 +#ifdef HAVE_DOS_PATHS + && (argv[0][0] != '\\' && (!argv[0][0] || argv[0][1] != ':')) + && strchr (argv[0], '\\') != 0 +#endif + ) argv[0] = concat (current_directory, "/", argv[0]); #endif /* !__MSDOS__ */ #endif /* WINDOWS32 */