Index: VBoxGuestR3LibHostVersion.cpp
===================================================================
--- VBoxGuestR3LibHostVersion.cpp	(revision 24279)
+++ VBoxGuestR3LibHostVersion.cpp	(working copy)
@@ -85,6 +85,9 @@
     Assert(ppszHostVersion);
     Assert(ppszGuestVersion);
 
+	*ppszHostVersion = NULL;
+	*ppszGuestVersion = NULL;
+
     /* We assume we have an update initially.
        Every block down below is allowed to veto */
     *bUpdate = true;
@@ -170,8 +173,10 @@
     /* Cleanup on failure */
     if (RT_FAILURE(rc))
     {
-        VbglR3GuestPropReadValueFree(*ppszHostVersion);
-        VbglR3GuestPropReadValueFree(*ppszGuestVersion);
+		if (*ppszHostVersion)
+			VbglR3GuestPropReadValueFree(*ppszHostVersion);
+		if (*ppszGuestVersion)
+			VbglR3GuestPropReadValueFree(*ppszGuestVersion);
     }
     return rc;
 }
Index: VBoxGuestR3LibMisc.cpp
===================================================================
--- VBoxGuestR3LibMisc.cpp	(revision 24279)
+++ VBoxGuestR3LibMisc.cpp	(working copy)
@@ -222,7 +222,7 @@
 # endif
 
     /* Still no luck? Then try the old xVM paths ... */
-    if (FAILED(r))
+    if (r != ERROR_SUCCESS)
     {
         r = RegOpenKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE\\Sun\\xVM VirtualBox Guest Additions", 0, KEY_READ, &hKey);
 # ifdef RT_ARCH_AMD64
@@ -235,7 +235,7 @@
     }
 
     /* Did we get something worth looking at? */
-    if (SUCCEEDED(r))
+    if (r == ERROR_SUCCESS)
     {
         /* Version. */
         DWORD dwType;
@@ -261,7 +261,16 @@
             }
         }
     }
-    rc = RTErrConvertFromWin32(r);
+	else
+	{
+		/* no registry found, return the compile-time version string atm. */
+		/* Version. */
+		if (ppszVer)
+			rc = RTStrAPrintf(ppszVer, "%s", VBOX_VERSION_STRING);
+		/* Revision. */
+		if (ppszRev)
+			rc = RTStrAPrintf(ppszRev, "%s", VBOX_SVN_REV);
+	}   
     if (NULL != hKey)
         RegCloseKey(hKey);
 #else /* !RT_OS_WINDOWS */
