xref: /reactos/sdk/lib/crt/direct/getdfree.c (revision 69931a4a)
1 #include <precomp.h>
2 #include <ctype.h>
3 #include <direct.h>
4 
5 
6 /*
7  * @implemented
8  */
9 unsigned int _getdiskfree(unsigned int _drive, struct _diskfree_t* _diskspace)
10 {
11     char RootPathName[10];
12 
13     RootPathName[0] = toupper(_drive +'@');
14     RootPathName[1] = ':';
15     RootPathName[2] = '\\';
16     RootPathName[3] = 0;
17     if (_diskspace == NULL)
18         return 0;
19     if (!GetDiskFreeSpaceA(RootPathName,(LPDWORD)&_diskspace->sectors_per_cluster,(LPDWORD)&_diskspace->bytes_per_sector,
20             (LPDWORD )&_diskspace->avail_clusters,(LPDWORD )&_diskspace->total_clusters))
21         return 0;
22     return _diskspace->avail_clusters;
23 }
24