* fhandler.h (fhandler_cygdrive:DRVSZ): New enum.

(pdrive_buf): New place to hold information about cygdrive.
* fhandler_disk_file.cc (fhandler_cygdrive::set_drives): Store drive info in
pdrive_buf since get_win32_name() could now be too small to hold everything.
(fhandler_cygdrive::rewinddir): Reset pdrive to pdrive_buf.
(fhandler_cygdrive::closedir): Ditto.
* pipe.cc (fhandler_pipe::init): Be more defensive when referencing
get_win32_name().  Rework logic which made a copy of the POSIX path and then
never used it.
This commit is contained in:
Christopher Faylor
2009-08-04 04:20:36 +00:00
parent ff7b364c12
commit 824d851859
8 changed files with 35 additions and 18 deletions

View File

@ -211,7 +211,7 @@ class path_conv
PWCHAR get_wide_win32_path (PWCHAR wc);
operator DWORD &() {return fileattr;}
operator int () {return fileattr; }
path_conv &operator =(path_conv &pc)
path_conv &operator =(path_conv& pc)
{
memcpy (this, &pc, sizeof pc);
path = cstrdup (pc.path);