Author: rharabien
Date: Mon Dec 19 21:34:22 2011
New Revision: 54706
URL: 
http://svn.reactos.org/svn/reactos?rev=54706&view=rev
Log:
[SHELL32]
- Simplify a bit
- Display 0% instead of 00% for empty drive space
Modified:
    trunk/reactos/dll/win32/shell32/drive.cpp
Modified: trunk/reactos/dll/win32/shell32/drive.cpp
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/drive.cp…
==============================================================================
--- trunk/reactos/dll/win32/shell32/drive.cpp [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/shell32/drive.cpp [iso-8859-1] Mon Dec 19 21:34:22 2011
@@ -392,85 +392,80 @@
 static
 VOID
-InitializeGeneralDriveDialog(HWND hwndDlg, WCHAR * szDrive)
-{
-    WCHAR szVolumeName[MAX_PATH+1] = {0};
-    DWORD MaxComponentLength = 0;
-    DWORD FileSystemFlags = 0;
-    WCHAR FileSystemName[MAX_PATH+1] = {0};
-    WCHAR szFormat[50];
-    WCHAR szBuffer[128];
-    BOOL ret;
+InitializeGeneralDriveDialog(HWND hwndDlg, WCHAR *szDrive)
+{
+    WCHAR wszVolumeName[MAX_PATH+1] = {0};
+    WCHAR wszFileSystem[MAX_PATH+1] = {0};
+    WCHAR wszFormat[50];
+    WCHAR wszBuf[128];
+    BOOL bRet;
     UINT DriveType;
     ULARGE_INTEGER FreeBytesAvailable;
     ULARGE_INTEGER TotalNumberOfFreeBytes;
     ULARGE_INTEGER TotalNumberOfBytes;
-    ret = GetVolumeInformationW(szDrive, szVolumeName, MAX_PATH + 1, NULL,
&MaxComponentLength, &FileSystemFlags, FileSystemName, MAX_PATH + 1);
-    if (ret)
+    bRet = GetVolumeInformationW(szDrive, wszVolumeName, _countof(wszVolumeName), NULL,
NULL, NULL, wszFileSystem, _countof(wszFileSystem));
+    if (bRet)
     {
         /* set volume label */
-        SetDlgItemTextW(hwndDlg, 14000, szVolumeName);
+        SetDlgItemTextW(hwndDlg, 14000, wszVolumeName);
         /* set filesystem type */
-        SetDlgItemTextW(hwndDlg, 14002, FileSystemName);
-
+        SetDlgItemTextW(hwndDlg, 14002, wszFileSystem);
     }
     DriveType = GetDriveTypeW(szDrive);
     if (DriveType == DRIVE_FIXED || DriveType == DRIVE_CDROM)
     {
-
         if(GetDiskFreeSpaceExW(szDrive, &FreeBytesAvailable, &TotalNumberOfBytes,
&TotalNumberOfFreeBytes))
         {
-            WCHAR szResult[128];
-            ULONG Result;
+            ULONG SpacePercent;
             HANDLE hVolume;
             DWORD BytesReturned = 0;
-            swprintf(szResult, L"\\\\.\\%c:", towupper(szDrive[0]));
-            hVolume = CreateFileW(szResult, GENERIC_READ, 0, NULL, OPEN_EXISTING, 0,
NULL);
+            swprintf(wszBuf, L"\\\\.\\%c:", towupper(szDrive[0]));
+            hVolume = CreateFileW(wszBuf, GENERIC_READ, 0, NULL, OPEN_EXISTING, 0, NULL);
             if (hVolume != INVALID_HANDLE_VALUE)
             {
-                ret = DeviceIoControl(hVolume, IOCTL_DISK_GET_LENGTH_INFO, NULL, 0,
(LPVOID)&TotalNumberOfBytes, sizeof(ULARGE_INTEGER), &BytesReturned, NULL);
-                if (ret && StrFormatByteSizeW(TotalNumberOfBytes.QuadPart,
szResult, sizeof(szResult) / sizeof(WCHAR)))
-                    SetDlgItemTextW(hwndDlg, 14007, szResult);
+                bRet = DeviceIoControl(hVolume, IOCTL_DISK_GET_LENGTH_INFO, NULL, 0,
(LPVOID)&TotalNumberOfBytes, sizeof(ULARGE_INTEGER), &BytesReturned, NULL);
+                if (bRet && StrFormatByteSizeW(TotalNumberOfBytes.QuadPart,
wszBuf, sizeof(wszBuf) / sizeof(WCHAR)))
+                    SetDlgItemTextW(hwndDlg, 14007, wszBuf);
                 CloseHandle(hVolume);
             }
-            TRACE("szResult %s hVOlume %p ret %d LengthInformation %ul Bytesreturned
%d\n", debugstr_w(szResult), hVolume, ret, TotalNumberOfBytes.QuadPart,
BytesReturned);
-
-            if (StrFormatByteSizeW(TotalNumberOfBytes.QuadPart -
FreeBytesAvailable.QuadPart, szResult, sizeof(szResult) / sizeof(WCHAR)))
-                SetDlgItemTextW(hwndDlg, 14003, szResult);
-
-            if (StrFormatByteSizeW(FreeBytesAvailable.QuadPart, szResult,
sizeof(szResult) / sizeof(WCHAR)))
-                SetDlgItemTextW(hwndDlg, 14005, szResult);
-
-            Result = GetFreeBytesShare(TotalNumberOfFreeBytes.QuadPart,
TotalNumberOfBytes.QuadPart);
+            TRACE("wszBuf %s hVolume %p bRet %d LengthInformation %ul BytesReturned
%d\n", debugstr_w(wszBuf), hVolume, bRet, TotalNumberOfBytes.QuadPart,
BytesReturned);
+
+            if (StrFormatByteSizeW(TotalNumberOfBytes.QuadPart -
FreeBytesAvailable.QuadPart, wszBuf, sizeof(wszBuf) / sizeof(WCHAR)))
+                SetDlgItemTextW(hwndDlg, 14003, wszBuf);
+
+            if (StrFormatByteSizeW(FreeBytesAvailable.QuadPart, wszBuf, sizeof(wszBuf) /
sizeof(WCHAR)))
+                SetDlgItemTextW(hwndDlg, 14005, wszBuf);
+
+            SpacePercent = GetFreeBytesShare(TotalNumberOfFreeBytes.QuadPart,
TotalNumberOfBytes.QuadPart);
             /* set free bytes percentage */
-            swprintf(szResult, L"%02u%%", Result);
-            SetDlgItemTextW(hwndDlg, 14006, szResult);
+            swprintf(wszBuf, L"%u%%", SpacePercent);
+            SetDlgItemTextW(hwndDlg, 14006, wszBuf);
             /* store used share amount */
-            Result = 100 - Result;
-            swprintf(szResult, L"%02u%%", Result);
-            SetDlgItemTextW(hwndDlg, 14004, szResult);
+            SpacePercent = 100 - SpacePercent;
+            swprintf(wszBuf, L"%u%%", SpacePercent);
+            SetDlgItemTextW(hwndDlg, 14004, wszBuf);
             if (DriveType == DRIVE_FIXED)
             {
-                if (LoadStringW(shell32_hInstance, IDS_DRIVE_FIXED, szBuffer,
sizeof(szBuffer) / sizeof(WCHAR)))
-                    SetDlgItemTextW(hwndDlg, 14001, szBuffer);
+                if (LoadStringW(shell32_hInstance, IDS_DRIVE_FIXED, wszBuf,
sizeof(wszBuf) / sizeof(WCHAR)))
+                    SetDlgItemTextW(hwndDlg, 14001, wszBuf);
             }
             else /* DriveType == DRIVE_CDROM) */
             {
-                if (LoadStringW(shell32_hInstance, IDS_DRIVE_CDROM, szBuffer,
sizeof(szBuffer) / sizeof(WCHAR)))
-                    SetDlgItemTextW(hwndDlg, 14001, szBuffer);
+                if (LoadStringW(shell32_hInstance, IDS_DRIVE_CDROM, wszBuf,
sizeof(wszBuf) / sizeof(WCHAR)))
+                    SetDlgItemTextW(hwndDlg, 14001, wszBuf);
             }
         }
     }
     /* set drive description */
-    GetDlgItemTextW(hwndDlg, 14009, szFormat, 50);
-    swprintf(szBuffer, szFormat, szDrive);
-    SetDlgItemTextW(hwndDlg, 14009, szBuffer);
+    GetDlgItemTextW(hwndDlg, 14009, wszFormat, _countof(wszFormat));
+    swprintf(wszBuf, wszFormat, szDrive);
+    SetDlgItemTextW(hwndDlg, 14009, wszBuf);
 }
 static INT_PTR CALLBACK