[Box Backup-commit] COMMIT r2230 - box/trunk/lib/win32

boxbackup-dev@fluffy.co.uk boxbackup-dev@fluffy.co.uk
Sat, 9 Aug 2008 08:07:17 +0100 (BST)


Author: chris
Date: 2008-08-09 08:07:16 +0100 (Sat, 09 Aug 2008)
New Revision: 2230

Modified:
   box/trunk/lib/win32/emu.cpp
Log:
Map ERROR_SHARING_VIOLATION to EBUSY in openfile().


Modified: box/trunk/lib/win32/emu.cpp
===================================================================
--- box/trunk/lib/win32/emu.cpp	2008-08-08 22:50:55 UTC (rev 2229)
+++ box/trunk/lib/win32/emu.cpp	2008-08-09 07:07:16 UTC (rev 2230)
@@ -667,9 +667,20 @@
 
 	if (hdir == INVALID_HANDLE_VALUE)
 	{
+		switch(GetLastError())
+		{
+			case ERROR_SHARING_VIOLATION:
+			errno = EBUSY;
+			break;
+
+			default:
+			errno = EINVAL;
+		}
+
 		::syslog(LOG_WARNING, "Failed to open file '%s': "
 			"%s", pFileName, 
 			GetErrorMessage(GetLastError()).c_str());
+
 		return INVALID_HANDLE_VALUE;
 	}