Jean-Marc Lasgouttes wrote:
>    @@ -623,6 +623,8 @@ string const InsetGraphics::prepareFile(
>                    // without dots and again with ext
>                    temp_file = ChangeExtension(
>                            subst(temp_file, ".", "_"), ext_tmp);
>    +          //Remove drive letter on Win32
>    +          if (temp_file[1] == ':') temp_file = temp_file.erase(0,2);
>                    // now we have any_dir_file.ext
>                    temp_file = MakeAbsPath(temp_file, buf->tmppath);
>                    lyxerr[Debug::GRAPHICS]
> 
> I do not like this. Is there a reason why this should not be handled
> by some generic function?

It is in 1.4.x. The file name is stored as a FileName variable and this 
mangling is done via FileName::mangledFilename()

Anyway, I think that the proposal should be:

>    +          // Mangle drive name on Win32
>    +          if (temp_file[1] == ':') temp_file[1] = '_';

Ie, the temporary file's name should include this information about the 
drive.

I'll prepare patches.

-- 
Angus

Reply via email to