]> gitweb.factorcode.org Git - factor.git/commitdiff
Add throw-win32-error, use it in (delete-file)
authorDoug Coleman <doug.coleman@gmail.com>
Wed, 19 Oct 2011 09:51:36 +0000 (02:51 -0700)
committerDoug Coleman <doug.coleman@gmail.com>
Wed, 19 Oct 2011 09:51:36 +0000 (02:51 -0700)
basis/io/directories/windows/windows.factor
basis/windows/errors/errors.factor

index 3d1bfddde597dccbd20a692f6e2fa3cdc87a9630..b02f8731f5ea8ea5f6c93ed042135e572f3aabde 100644 (file)
@@ -28,7 +28,7 @@ ERROR: file-delete-failed path error ;
 : (delete-file) ( path -- )
     dup DeleteFile 0 = [
         GetLastError ERROR_ACCESS_DENIED =
-        [ delete-read-only-file ] [ win32-error ] if
+        [ delete-read-only-file ] [ throw-win32-error ] if
     ] [ drop ] if ;
 
 M: windows delete-file ( path -- )
index b90b766883b2d76d12062d089998b5f49e293892..e13c245f1edaed867de2a5774dd222d378b5c5fd 100755 (executable)
@@ -740,9 +740,12 @@ ERROR: windows-error n string ;
     ] [
         dup n>win32-error-string windows-error
     ] if ;
+    
+: throw-win32-error ( -- * )
+    win32-error-string throw ;
 
 : check-invalid-handle ( handle -- handle )
-    dup INVALID_HANDLE_VALUE = [ win32-error-string throw ] when ;
+    dup INVALID_HANDLE_VALUE = [ throw-win32-error ] when ;
 
 CONSTANT: expected-io-errors
     ${
@@ -759,7 +762,7 @@ CONSTANT: expected-io-errors
     dup expected-io-error? [
         drop
     ] [
-        win32-error-string throw
+        throw-win32-error
     ] if ;
 
 : io-error ( return-value -- )