Changeset 5080 for trunk/include/win


Ignore:
Timestamp:
Feb 9, 2001, 8:49:53 PM (25 years ago)
Author:
sandervl
Message:

FS corruption fixes in DRIVE macros

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/include/win/drive.h

    r834 r5080  
    2929#define DRIVE_CASE_PRESERVING 0x0008  /* Drive fs is case preserving */
    3030
    31 #define DRIVE_SetCurrentDrive(a)    _chdrive(a)
    32 #define DRIVE_GetCurrentDrive()     _getdrive()
    33 #define DRIVE_Chdir(a,b)             chdir(b)
    34 #define DRIVE_GetDosCwd(a, b)       _getdcwd(b, a, sizeof(a))
     31inline int DRIVE_SetCurrentDrive(char drive)
     32{
     33   int ret;
     34   USHORT sel = GetFS();
     35   ret = _chdrive(drive);
     36   SetFS(sel);
     37   return ret;
     38}
     39
     40inline int DRIVE_GetCurrentDrive()     
     41{
     42   int ret;
     43   USHORT sel = GetFS();
     44   ret = _getdrive();
     45   SetFS(sel);
     46   return ret;
     47}
     48
     49#define DRIVE_Chdir(a,b)             SetCurrentDirectoryA(b)
     50
     51inline char *DRIVE_GetDosCwd (char *buffer, int drive)
     52{
     53   char * ret;
     54   USHORT sel = GetFS();
     55   ret = _getdcwd(drive, buffer, sizeof(int));
     56   SetFS(sel);
     57   return ret;
     58}
    3559
    3660#if 0
Note: See TracChangeset for help on using the changeset viewer.