- sz = cygwin_posix_to_win32_path_list_buf_size (fname1);
- fname2 = alloca (sz + pos);
- strncpy (fname2, doc, pos);
- doc = fname2;
- fname2 += pos;
- cygwin_posix_to_win32_path_list (fname1, fname2);
+ fname1++;
+ pos = fname1 - doc;
+ if (!(isalpha (fname1[0]) && (IS_DEVICE_SEP (fname1[1]))))
+ {
+ sz = cygwin_posix_to_win32_path_list_buf_size (fname1);
+ fname2 = alloca (sz + pos);
+ strncpy (fname2, doc, pos);
+ doc = fname2;
+ fname2 += pos;
+ cygwin_posix_to_win32_path_list (fname1, fname2);
+ }