Index: /trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp
===================================================================
--- /trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp	(revision 29333)
+++ /trunk/src/VBox/Frontends/VirtualBox/src/globals/VBoxGlobal.cpp	(revision 29334)
@@ -1472,6 +1472,6 @@
         case KStorageBus_SATA:
         case KStorageBus_SCSI:
+        case KStorageBus_SAS:
         case KStorageBus_Floppy:
-        case KStorageBus_SAS:
             break;
 
@@ -1508,12 +1508,13 @@
             break;
         }
+        case KStorageBus_SAS:
+        {
+            /* TODO: change this index to 6 after 3.2 */
+            result = mSlotTemplates [5].arg (aSlot.port);
+            break;
+        }
         case KStorageBus_Floppy:
         {
-            result = mSlotTemplates [6].arg (aSlot.device);
-            break;
-        }
-        case KStorageBus_SAS:
-        {
-            result = mSlotTemplates [5].arg (aSlot.port);
+            result = mSlotTemplates [7].arg (aSlot.device);
             break;
         }
@@ -1578,4 +1579,13 @@
         }
         case 6:
+        {
+            result.bus = KStorageBus_SAS;
+            int maxPort = virtualBox().GetSystemProperties().GetMaxPortCountForStorageBus (result.bus);
+            result.port = regExp.cap (1).toInt();
+            if (result.port < 0 || result.port > maxPort)
+                AssertMsgFailed (("Invalid port %d\n", result.port));
+            break;
+        }
+        case 7:
         {
             result.bus = KStorageBus_Floppy;
@@ -3080,5 +3090,6 @@
     mSlotTemplates [4] = tr ("SATA Port %1", "New Storage UI : Slot Name");
     mSlotTemplates [5] = tr ("SCSI Port %1", "New Storage UI : Slot Name");
-    mSlotTemplates [6] = tr ("Floppy Device %1", "New Storage UI : Slot Name");
+    mSlotTemplates [6] = tr ("SAS Port %1", "New Storage UI : Slot Name");
+    mSlotTemplates [7] = tr ("Floppy Device %1", "New Storage UI : Slot Name");
 
     mDiskTypes [KMediumType_Normal] =           tr ("Normal", "DiskType");
