Changeset 4559


Ignore:
Timestamp:
Nov 5, 2000, 11:21:48 PM (24 years ago)
Author:
sandervl
Message:

GetDriveTypeW fix

File:
1 edited

Legend:

Unmodified
Added
Removed
  • TabularUnified trunk/src/kernel32/disk.cpp

    r4387 r4559  
    1 /* $Id: disk.cpp,v 1.17 2000-10-02 18:39:33 sandervl Exp $ */
     1/* $Id: disk.cpp,v 1.18 2000-11-05 22:21:48 sandervl Exp $ */
    22
    33/*
     
    190190//******************************************************************************
    191191//******************************************************************************
    192 UINT WIN32API GetDriveTypeA( LPCSTR arg1)
     192UINT WIN32API GetDriveTypeA(LPCSTR lpszDrive)
    193193{
    194194    UINT rc;
    195     rc = O32_GetDriveType(arg1);
    196     dprintf(("KERNEL32:  GetDriveType %s = %d\n", arg1,rc));
     195    //NOTE: Although GetDriveTypeW handles -1, GetDriveTypeA crashes in NT 4, SP6
     196    rc = O32_GetDriveType(lpszDrive);
     197    dprintf(("KERNEL32:  GetDriveType %s = %d", lpszDrive, rc));
    197198    return rc;
    198199}
    199200//******************************************************************************
    200201//******************************************************************************
    201 UINT WIN32API GetDriveTypeW(LPCWSTR arg1)
     202UINT WIN32API GetDriveTypeW(LPCWSTR lpszDrive)
    202203{
    203204 UINT  rc;
    204205 char *astring;
    205206
    206     astring = UnicodeToAsciiString((LPWSTR)arg1);
     207    if(lpszDrive == (LPCWSTR)-1) {
     208        return DRIVE_CANNOTDETERMINE;   //NT 4, SP6 returns this (VERIFIED)
     209    }
     210    astring = UnicodeToAsciiString((LPWSTR)lpszDrive);
    207211    dprintf(("KERNEL32:  OS2GetDriveTypeW %s", astring));
    208212    rc = O32_GetDriveType(astring);
Note: See TracChangeset for help on using the changeset viewer.