@@ -, +, @@ --- main/sal/inc/osl/file.h | 1 + main/sal/inc/osl/file.hxx | 1 + main/sal/osl/w32/file_error.c | 4 +++- main/ucb/source/ucp/file/filglob.cxx | 4 ++++ 4 files changed, 9 insertions(+), 1 deletion(-) --- a/main/sal/inc/osl/file.h +++ a/main/sal/inc/osl/file.h @@ -132,6 +132,7 @@ typedef enum { osl_File_E_USERS, osl_File_E_OVERFLOW, osl_File_E_NOTREADY, + osl_File_E_LOCKED, osl_File_E_invalidError, /* unmapped error: always last entry in enum! */ osl_File_E_TIMEDOUT, osl_File_E_NETWORK, --- a/main/sal/inc/osl/file.hxx +++ a/main/sal/inc/osl/file.hxx @@ -99,6 +99,7 @@ public: E_USERS = osl_File_E_USERS, E_OVERFLOW = osl_File_E_OVERFLOW, E_NOTREADY = osl_File_E_NOTREADY, + E_LOCKED = osl_File_E_LOCKED, E_invalidError = osl_File_E_invalidError, /* unmapped error: always last entry in enum! */ E_TIMEDOUT = osl_File_E_TIMEDOUT, E_NETWORK = osl_File_E_NETWORK --- a/main/sal/osl/w32/file_error.c +++ a/main/sal/osl/w32/file_error.c @@ -87,7 +87,9 @@ static const struct osl_file_error_entry errtable[] = { { ERROR_NESTING_NOT_ALLOWED, osl_File_E_AGAIN }, /* 215 */ { ERROR_DIRECTORY, osl_File_E_NOENT }, /* 267 */ { ERROR_NOT_ENOUGH_QUOTA, osl_File_E_NOMEM }, /* 1816 */ - { ERROR_UNEXP_NET_ERR, osl_File_E_NETWORK } /* 59 */ + { ERROR_UNEXP_NET_ERR, osl_File_E_NETWORK }, /* 59 */ + { ERROR_FILE_CHECKED_OUT, osl_File_E_LOCKED }, /* 220 The file is locked or checked out by another user. */ + { ERROR_INVALID_NAME, osl_File_E_NOENT } /* 123 One or more of the names composing the file path has a wrong syntax. */ }; /* The following two constants must be the minimum and maximum --- a/main/ucb/source/ucp/file/filglob.cxx +++ a/main/ucb/source/ucp/file/filglob.cxx @@ -368,6 +368,10 @@ namespace fileaccess { ioErrorCode = IOErrorCode_LOCKING_VIOLATION; break; + case FileBase::E_LOCKED: // file is locked by another user + ioErrorCode = IOErrorCode_LOCKING_VIOLATION; + break; + case FileBase::E_FAULT: // Bad address case FileBase::E_LOOP: // Too many symbolic links encountered case FileBase::E_NOSPC: // No space left on device --