Index: /trunk/include/VBox/vd.h
===================================================================
--- /trunk/include/VBox/vd.h	(revision 85883)
+++ /trunk/include/VBox/vd.h	(revision 85884)
@@ -130,5 +130,5 @@
 /** @} */
 
-/** @name VBox raw disk or partition flags
+/** @name VDISKRAW_XXX - VBox raw disk or partition flags
  * @{
  */
@@ -144,8 +144,9 @@
 
 /**
- * Auxiliary type for describing partitions on raw disks. The entries must be
- * in ascending order (as far as uStart is concerned), and must not overlap.
- * Note that this does not correspond 1:1 to partitions, it is describing the
- * general meaning of contiguous areas on the disk.
+ * Auxiliary type for describing partitions on raw disks.
+ *
+ * The entries must be in ascending order (as far as uStart is concerned), and
+ * must not overlap. Note that this does not correspond 1:1 to partitions, it is
+ * describing the general meaning of contiguous areas on the disk.
  */
 typedef struct VDISKRAWPARTDESC
@@ -161,16 +162,15 @@
     const void      *pvPartitionData;
     /** Offset where the data starts in this device. */
-    uint64_t        uStartOffset;
+    uint64_t        offStartInDevice;
     /** Offset where the data starts in the disk. */
-    uint64_t        uStart;
+    uint64_t        offStartInVDisk;
     /** Size of the data area. */
     uint64_t        cbData;
-    /** Flags for special treatment, see VDISKRAW_FLAGS_*. */
+    /** Flags for special treatment, see VDISKRAW_XXX. */
     uint32_t        uFlags;
 } VDISKRAWPARTDESC, *PVDISKRAWPARTDESC;
 
 /**
- * Auxiliary data structure for difference between GPT and MBR
- * disks.
+ * Auxiliary data structure for difference between GPT and MBR disks.
  */
 typedef enum VDISKPARTTYPE
@@ -188,17 +188,15 @@
      * to make logging of the comment string produce sensible results. */
     char            szSignature[4];
-    /** Flags for special treatment, see VDISKRAW_FLAGS_*. */
-    /** Flag whether access to full disk should be given (ignoring the
-     * partition information below). */
+    /** Flags for special treatment, see VDISKRAW_XXX. */
     uint32_t        uFlags;
     /** Filename for the raw disk. Ignored for partitioned raw disks.
      * For Linux e.g. /dev/sda, and for Windows e.g. //./PhysicalDisk0. */
-    const char      *pszRawDisk;
+    char           *pszRawDisk;
+    /** Partitioning type of the disk */
+    VDISKPARTTYPE   enmPartitioningType;
     /** Number of entries in the partition descriptor array. */
-    unsigned        cPartDescs;
+    uint32_t        cPartDescs;
     /** Pointer to the partition descriptor array. */
     PVDISKRAWPARTDESC pPartDescs;
-    /** Partitioning type of the disk */
-    VDISKPARTTYPE uPartitioningType;
 } VDISKRAW, *PVDISKRAW;
 
Index: /trunk/src/VBox/Frontends/VBoxManage/VBoxInternalManage.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VBoxManage/VBoxInternalManage.cpp	(revision 85883)
+++ /trunk/src/VBox/Frontends/VBoxManage/VBoxInternalManage.cpp	(revision 85884)
@@ -1516,5 +1516,5 @@
     {
         RawDescriptor.uFlags = VDISKRAW_DISK;
-        RawDescriptor.pszRawDisk = rawdisk.c_str();
+        RawDescriptor.pszRawDisk = (char *)rawdisk.c_str();
     }
     else
@@ -1564,5 +1564,5 @@
         }
 
-        RawDescriptor.uPartitioningType = partitions.uPartitioningType;
+        RawDescriptor.enmPartitioningType = partitions.uPartitioningType;
 
         for (unsigned i = 0; i < partitions.cPartitions; i++)
@@ -1605,5 +1605,5 @@
                  * prevent overlapping data areas on the resulting image. */
                 pPartDesc->cbData = RT_MIN(partitions.aPartitions[i].cPartDataSectors, 63) * 512;
-                pPartDesc->uStart = partitions.aPartitions[i].uPartDataStart * 512;
+                pPartDesc->offStartInVDisk = partitions.aPartitions[i].uPartDataStart * 512;
                 Assert(pPartDesc->cbData - (size_t)pPartDesc->cbData == 0);
                 void *pPartData = RTMemAlloc((size_t)pPartDesc->cbData);
@@ -1730,13 +1730,13 @@
 
                 pPartDesc->pszRawDevice = pszRawName;
-                pPartDesc->uStartOffset = uStartOffset;
+                pPartDesc->offStartInDevice = uStartOffset;
             }
             else
             {
                 pPartDesc->pszRawDevice = NULL;
-                pPartDesc->uStartOffset = 0;
-            }
-
-            pPartDesc->uStart = partitions.aPartitions[i].uStart * 512;
+                pPartDesc->offStartInDevice = 0;
+            }
+
+            pPartDesc->offStartInVDisk = partitions.aPartitions[i].uStart * 512;
             pPartDesc->cbData = partitions.aPartitions[i].uSize * 512;
         }
@@ -1746,11 +1746,11 @@
         {
             unsigned uMinIdx = i;
-            uint64_t uMinVal = RawDescriptor.pPartDescs[i].uStart;
+            uint64_t uMinVal = RawDescriptor.pPartDescs[i].offStartInVDisk;
             for (unsigned j = i + 1; j < RawDescriptor.cPartDescs; j++)
             {
-                if (RawDescriptor.pPartDescs[j].uStart < uMinVal)
+                if (RawDescriptor.pPartDescs[j].offStartInVDisk < uMinVal)
                 {
                     uMinIdx = j;
-                    uMinVal = RawDescriptor.pPartDescs[j].uStart;
+                    uMinVal = RawDescriptor.pPartDescs[j].offStartInVDisk;
                 }
             }
@@ -1772,8 +1772,10 @@
             if (RawDescriptor.pPartDescs[i].pvPartitionData)
             {
-                RawDescriptor.pPartDescs[i].cbData = RT_MIN(RawDescriptor.pPartDescs[i+1].uStart - RawDescriptor.pPartDescs[i].uStart, RawDescriptor.pPartDescs[i].cbData);
+                RawDescriptor.pPartDescs[i].cbData = RT_MIN(  RawDescriptor.pPartDescs[i+1].offStartInVDisk
+                                                            - RawDescriptor.pPartDescs[i].offStartInVDisk,
+                                                            RawDescriptor.pPartDescs[i].cbData);
                 if (!RawDescriptor.pPartDescs[i].cbData)
                 {
-                    if (RawDescriptor.uPartitioningType == VDISKPARTTYPE_MBR)
+                    if (RawDescriptor.enmPartitioningType == VDISKPARTTYPE_MBR)
                     {
                         RTMsgError("MBR/EPT overlaps with data area");
