You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by mt...@apache.org on 2009/08/20 10:15:05 UTC
svn commit: r806084 -
/commons/sandbox/runtime/trunk/src/main/native/os/win32/pshm.c
Author: mturk
Date: Thu Aug 20 08:15:05 2009
New Revision: 806084
URL: http://svn.apache.org/viewvc?rev=806084&view=rev
Log:
Throw exception on failed remove
Modified:
commons/sandbox/runtime/trunk/src/main/native/os/win32/pshm.c
Modified: commons/sandbox/runtime/trunk/src/main/native/os/win32/pshm.c
URL: http://svn.apache.org/viewvc/commons/sandbox/runtime/trunk/src/main/native/os/win32/pshm.c?rev=806084&r1=806083&r2=806084&view=diff
==============================================================================
--- commons/sandbox/runtime/trunk/src/main/native/os/win32/pshm.c (original)
+++ commons/sandbox/runtime/trunk/src/main/native/os/win32/pshm.c Thu Aug 20 08:15:05 2009
@@ -89,7 +89,7 @@
rv = acr_ioh_close(shm);
if (rv && IS_VALID_HANDLE(_E)) {
- if (rv == EACCES)
+ if (ACR_STATUS_IS_EACCES(rv))
ACR_ThrowException(_E, THROW_NMARK, ACR_EX_ESECURITY, 0);
else
ACR_ThrowException(_E, THROW_NMARK, ACR_EX_EIO, rv);
@@ -102,6 +102,12 @@
int rc = 0;
if (!DeleteFileW(filename))
rc = ACR_GET_OS_ERROR();
+ if (rc && IS_VALID_HANDLE(_E)) {
+ if (ACR_STATUS_IS_EACCES(rc))
+ ACR_ThrowException(_E, THROW_NMARK, ACR_EX_ESECURITY, 0);
+ else
+ ACR_ThrowException(_E, THROW_NMARK, ACR_EX_EIO, rc);
+ }
return rc;
}
@@ -243,7 +249,7 @@
x_free((void *)(shm->filename));
x_free(shm);
if (IS_VALID_HANDLE(_E)) {
- if (rc == EACCES)
+ if (ACR_STATUS_IS_EACCES(rc))
ACR_ThrowException(_E, THROW_NMARK, ACR_EX_ESECURITY, 0);
else
ACR_ThrowException(_E, THROW_NMARK, ACR_EX_EIO, rc);