Index: /trunk/src/VBox/Main/GuestOSTypeImpl.cpp
===================================================================
--- /trunk/src/VBox/Main/GuestOSTypeImpl.cpp	(revision 32893)
+++ /trunk/src/VBox/Main/GuestOSTypeImpl.cpp	(revision 32894)
@@ -70,5 +70,5 @@
  * @param aHDDSize           recommended HDD size in bytes
  */
-HRESULT GuestOSType::init(const char *aFamilyId, const char *aFamilyDescription,
+HRESULT GuestOSType::init(const Global::OSType &ostype)/*const char *aFamilyId, const char *aFamilyDescription,
                           const char *aId, const char *aDescription,
                           VBOXOSTYPE aOSType, uint32_t aOSHint,
@@ -80,5 +80,5 @@
                           StorageControllerType_T aHdStorageControllerType,
                           StorageBus_T aHdStorageBusType,
-                          ChipsetType_T aChipsetType)
+                          ChipsetType_T aChipsetType*/
 {
 #if 0
@@ -98,5 +98,5 @@
 #endif
 
-    ComAssertRet(aFamilyId && aFamilyDescription && aId && aDescription, E_INVALIDARG);
+    ComAssertRet(ostype.familyId && ostype.familyDescription && ostype.id && ostype.description, E_INVALIDARG);
 
     /* Enclose the state transition NotReady->InInit->Ready */
@@ -104,20 +104,20 @@
     AssertReturn(autoInitSpan.isOk(), E_FAIL);
 
-    unconst(mFamilyID) = aFamilyId;
-    unconst(mFamilyDescription) = aFamilyDescription;
-    unconst(mID) = aId;
-    unconst(mDescription) = aDescription;
-    unconst(mOSType) = aOSType;
-    unconst(mOSHint) = aOSHint;
-    unconst(mRAMSize) = aRAMSize;
-    unconst(mVRAMSize) = aVRAMSize;
-    unconst(mHDDSize) = aHDDSize;
-    unconst(mNetworkAdapterType)       = aNetworkAdapterType;
-    unconst(mNumSerialEnabled)         = aNumSerialEnabled;
-    unconst(mDvdStorageControllerType) = aDvdStorageControllerType;
-    unconst(mDvdStorageBusType)        = aDvdStorageBusType;
-    unconst(mHdStorageControllerType)  = aHdStorageControllerType;
-    unconst(mHdStorageBusType)         = aHdStorageBusType;
-    unconst(mChipsetType)              = aChipsetType;
+    unconst(mFamilyID)                  = ostype.familyId;
+    unconst(mFamilyDescription)         = ostype.familyDescription;
+    unconst(mID)                        = ostype.id;
+    unconst(mDescription)               = ostype.description;
+    unconst(mOSType)                    = ostype.osType;
+    unconst(mOSHint)                    = ostype.osHint;
+    unconst(mRAMSize)                   = ostype.recommendedRAM;
+    unconst(mVRAMSize)                  = ostype.recommendedVRAM;
+    unconst(mHDDSize)                   = ostype.recommendedHDD;
+    unconst(mNetworkAdapterType)        = ostype.networkAdapterType;
+    unconst(mNumSerialEnabled)          = ostype.numSerialEnabled;
+    unconst(mDvdStorageControllerType)  = ostype.dvdStorageControllerType;
+    unconst(mDvdStorageBusType)         = ostype.dvdStorageBusType;
+    unconst(mHdStorageControllerType)   = ostype.hdStorageControllerType;
+    unconst(mHdStorageBusType)          = ostype.hdStorageBusType;
+    unconst(mChipsetType)               = ostype.chipsetType;
 
     /* Confirm a successful initialization when it's the case */
Index: /trunk/src/VBox/Main/VirtualBoxImpl.cpp
===================================================================
--- /trunk/src/VBox/Main/VirtualBoxImpl.cpp	(revision 32893)
+++ /trunk/src/VBox/Main/VirtualBoxImpl.cpp	(revision 32894)
@@ -442,26 +442,11 @@
 
         /* guest OS type objects, needed by machines */
-        for (size_t i = 0; i < RT_ELEMENTS(Global::sOSTypes); ++ i)
-        {
-            ComObjPtr <GuestOSType> guestOSTypeObj;
+        for (size_t i = 0; i < RT_ELEMENTS(Global::sOSTypes); ++i)
+        {
+            ComObjPtr<GuestOSType> guestOSTypeObj;
             rc = guestOSTypeObj.createObject();
             if (SUCCEEDED(rc))
             {
-                rc = guestOSTypeObj->init(Global::sOSTypes[i].familyId,
-                                          Global::sOSTypes[i].familyDescription,
-                                          Global::sOSTypes[i].id,
-                                          Global::sOSTypes[i].description,
-                                          Global::sOSTypes[i].osType,
-                                          Global::sOSTypes[i].osHint,
-                                          Global::sOSTypes[i].recommendedRAM,
-                                          Global::sOSTypes[i].recommendedVRAM,
-                                          Global::sOSTypes[i].recommendedHDD,
-                                          Global::sOSTypes[i].networkAdapterType,
-                                          Global::sOSTypes[i].numSerialEnabled,
-                                          Global::sOSTypes[i].dvdStorageControllerType,
-                                          Global::sOSTypes[i].dvdStorageBusType,
-                                          Global::sOSTypes[i].hdStorageControllerType,
-                                          Global::sOSTypes[i].hdStorageBusType,
-                                          Global::sOSTypes[i].chipsetType);
+                rc = guestOSTypeObj->init(Global::sOSTypes[i]);
                 if (SUCCEEDED(rc))
                     m->allGuestOSTypes.addChild(guestOSTypeObj);
Index: /trunk/src/VBox/Main/include/GuestOSTypeImpl.h
===================================================================
--- /trunk/src/VBox/Main/include/GuestOSTypeImpl.h	(revision 32893)
+++ /trunk/src/VBox/Main/include/GuestOSTypeImpl.h	(revision 32894)
@@ -47,14 +47,5 @@
 
     // public initializer/uninitializer for internal purposes only
-    HRESULT init(const char *aFamilyId, const char *aFamilyDescription,
-                 const char *aId, const char *aDescription,
-                 VBOXOSTYPE aOSType, uint32_t aOSHint,
-                 uint32_t aRAMSize, uint32_t aVRAMSize, uint64_t aHDDSize,
-                 NetworkAdapterType_T aNetworkAdapterType, uint32_t numSerialEnabled,
-                 StorageControllerType_T aDvdStorageControllerType,
-                 StorageBus_T aDvdStorageBusType,
-                 StorageControllerType_T aHdStorageControllerType,
-                 StorageBus_T aHdStorageBusType,
-                 ChipsetType_T aChipsetType);
+    HRESULT init(const Global::OSType &ostype);
     void uninit();
 
