Index: /trunk/src/VBox/Main/idl/VirtualBox.xidl
===================================================================
--- /trunk/src/VBox/Main/idl/VirtualBox.xidl	(revision 60545)
+++ /trunk/src/VBox/Main/idl/VirtualBox.xidl	(revision 60546)
@@ -1880,4 +1880,10 @@
       To enumerate all the virtual machines on the host, use the
       <link to="IVirtualBox::machines"/> attribute.
+
+      Error information handling is a bit special with IVirtualBox: creating
+      an instance will always succeed. The return of the actual error
+      code/information is postponed to any attribute or method call. The
+      reason for this is that COM likes to mutilate the error code and lose
+      the detailed error information returned by instance creation.
     </desc>
 
@@ -21142,4 +21148,10 @@
       via the webservice). Once the session logic is redesigned this might
       change.
+
+      Error information handling is a bit special with IVirtualBoxClient:
+      creating an instance will always succeed. The return of the actual error
+      code/information is postponed to any attribute or method call. The
+      reason for this is that COM likes to mutilate the error code and lose
+      the detailed error information returned by instance creation.
     </desc>
 
Index: /trunk/src/VBox/Main/src-client/VirtualBoxClientImpl.cpp
===================================================================
--- /trunk/src/VBox/Main/src-client/VirtualBoxClientImpl.cpp	(revision 60545)
+++ /trunk/src/VBox/Main/src-client/VirtualBoxClientImpl.cpp	(revision 60546)
@@ -138,5 +138,5 @@
     }
 
-    /* Confirm a successful initialization iwhen it's the case. Must be last,
+    /* Confirm a successful initialization when it's the case. Must be last,
      * as on failure it will uninitialize the object. */
     if (SUCCEEDED(rc))
