Index: trunk/src/libs/xpcom18a4/xpcom/io/nsLocalFileCommon.cpp
===================================================================
--- trunk/src/libs/xpcom18a4/xpcom/io/nsLocalFileCommon.cpp	(revision 16394)
+++ trunk/src/libs/xpcom18a4/xpcom/io/nsLocalFileCommon.cpp	(revision 16395)
@@ -62,15 +62,15 @@
 }
 
-#if !defined(XP_MAC) && !defined(XP_MACOSX)
+#if (!defined(XP_MAC) && !defined(XP_MACOSX)) || (defined(VBOX) && defined(RT_ARCH_AMD64))
 NS_IMETHODIMP
 nsLocalFile::InitWithFile(nsILocalFile *aFile)
 {
     NS_ENSURE_ARG(aFile);
-    
+
     nsCAutoString path;
     aFile->GetNativePath(path);
     if (path.IsEmpty())
         return NS_ERROR_INVALID_ARG;
-    return InitWithNativePath(path); 
+    return InitWithNativePath(path);
 }
 #endif
@@ -80,5 +80,5 @@
 #else
 #define kMaxFilenameLength 255
-#endif  
+#endif
 
 NS_IMETHODIMP
@@ -86,9 +86,9 @@
 {
     nsresult rv = Create(type, attributes);
-    
+
     if (NS_SUCCEEDED(rv)) return NS_OK;
     if (rv != NS_ERROR_FILE_ALREADY_EXISTS) return rv;
 
-    nsCAutoString leafName; 
+    nsCAutoString leafName;
     rv = GetNativeLeafName(leafName);
 
@@ -117,11 +117,11 @@
 
         rv = Create(type, attributes);
-    
-        if (NS_SUCCEEDED(rv) || rv != NS_ERROR_FILE_ALREADY_EXISTS) 
+
+        if (NS_SUCCEEDED(rv) || rv != NS_ERROR_FILE_ALREADY_EXISTS)
         {
             return rv;
         }
     }
- 
+
     // The disk is full, sort of
     return NS_ERROR_FILE_TOO_BIG;
@@ -150,7 +150,7 @@
     PRUnichar **nodePtr = nodeArray;
     if (*path == kPathSeparatorChar)
-      path++;    
+      path++;
     *nodePtr++ = path;
-    
+
     for (PRUnichar *cp = path; *cp != 0; cp++) {
       if (*cp == kPathSeparatorChar) {
@@ -166,5 +166,5 @@
 }
 
- 
+
 NS_IMETHODIMP
 nsLocalFile::GetRelativeDescriptor(nsILocalFile *fromFile, nsACString& _retval)
@@ -175,6 +175,6 @@
     //
     // _retval will be UTF-8 encoded
-    // 
-        
+    //
+
     nsresult rv;
     _retval.Truncate(0);
@@ -183,5 +183,5 @@
     PRUnichar *thisNodes[kMaxNodesInPath], *fromNodes[kMaxNodesInPath];
     PRInt32  thisNodeCnt, fromNodeCnt, nodeIndex;
-    
+
     rv = GetPath(thisPath);
     if (NS_FAILED(rv))
@@ -194,10 +194,10 @@
     PRUnichar *thisPathPtr; thisPath.BeginWriting(thisPathPtr);
     PRUnichar *fromPathPtr; fromPath.BeginWriting(fromPathPtr);
-    
+
     thisNodeCnt = SplitPath(thisPathPtr, thisNodes, kMaxNodesInPath);
     fromNodeCnt = SplitPath(fromPathPtr, fromNodes, kMaxNodesInPath);
     if (thisNodeCnt < 0 || fromNodeCnt < 0)
       return NS_ERROR_FAILURE;
-    
+
     for (nodeIndex = 0; nodeIndex < thisNodeCnt && nodeIndex < fromNodeCnt; ++nodeIndex) {
 #ifdef XP_WIN
@@ -209,7 +209,7 @@
 #endif
     }
-    
+
     PRInt32 branchIndex = nodeIndex;
-    for (nodeIndex = branchIndex; nodeIndex < fromNodeCnt; nodeIndex++) 
+    for (nodeIndex = branchIndex; nodeIndex < fromNodeCnt; nodeIndex++)
       _retval.AppendLiteral("../");
     for (nodeIndex = branchIndex; nodeIndex < thisNodeCnt; nodeIndex++) {
@@ -222,5 +222,5 @@
         _retval.Append('/');
     }
-        
+
     return NS_OK;
 }
@@ -230,5 +230,5 @@
 {
     NS_NAMED_LITERAL_CSTRING(kParentDirStr, "../");
- 
+
     nsCOMPtr<nsIFile> targetFile;
     nsresult rv = fromFile->Clone(getter_AddRefs(targetFile));
@@ -238,13 +238,13 @@
     //
     // relativeDesc is UTF-8 encoded
-    // 
+    //
 
     nsCString::const_iterator strBegin, strEnd;
     relativeDesc.BeginReading(strBegin);
     relativeDesc.EndReading(strEnd);
-    
+
     nsCString::const_iterator nodeBegin(strBegin), nodeEnd(strEnd);
     nsCString::const_iterator pos(strBegin);
-    
+
     nsCOMPtr<nsIFile> parentDir;
     while (FindInReadable(kParentDirStr, nodeBegin, nodeEnd)) {
@@ -263,5 +263,5 @@
       FindCharInReadable('/', nodeEnd, strEnd);
 #ifdef XP_MAC
-      nsCAutoString nodeString(Substring(nodeBegin, nodeEnd));      
+      nsCAutoString nodeString(Substring(nodeBegin, nodeEnd));
       nodeString.ReplaceSubstring(kESCSlashStr, kSlashStr);
       targetFile->Append(NS_ConvertUTF8toUCS2(nodeString));
