summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--rbutil/rbutilqt/base/utils.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/rbutil/rbutilqt/base/utils.cpp b/rbutil/rbutilqt/base/utils.cpp
index 724a1553f1..6bd9e23230 100644
--- a/rbutil/rbutilqt/base/utils.cpp
+++ b/rbutil/rbutilqt/base/utils.cpp
@@ -502,13 +502,14 @@ QString Utils::resolveDevicename(QString path)
// get the extents
if(DeviceIoControl(h, IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS,
NULL, 0, extents, sizeof(buffer), &written, NULL)) {
- if(extents->NumberOfDiskExtents > 1) {
- LOG_INFO() << "resolving device name: volume spans multiple disks!";
- return "";
+ if(extents->NumberOfDiskExtents == 1) {
+ CloseHandle(h);
+ LOG_INFO() << "device name is" << extents->Extents[0].DiskNumber;
+ return QString("%1").arg(extents->Extents[0].DiskNumber);
}
- LOG_INFO() << "device name is" << extents->Extents[0].DiskNumber;
- return QString("%1").arg(extents->Extents[0].DiskNumber);
+ LOG_INFO() << "resolving device name: volume spans multiple disks!";
}
+ CloseHandle(h);
#endif
return QString("");