--- darcs/Distribution/ShellHarness.hs.orig	2010-12-30 07:46:59.000000000 -0800
+++ darcs/Distribution/ShellHarness.hs	2010-12-30 07:58:39.000000000 -0800
@@ -3,6 +3,7 @@
 
 import Prelude hiding( catch )
 import System.Directory ( getCurrentDirectory, setPermissions,
+                          emptyPermissions, setOwnerExecutable, setOwnerReadable, setOwnerWritable,
                           Permissions(..), getDirectoryContents,
                           findExecutable, createDirectoryIfMissing,
                           renameFile, removeFile )
@@ -111,12 +112,9 @@
                  forM tixfiles $ \f -> removeFile f
                  return ()
              mapM_ (\x->
-                  setPermissions x (Permissions
-                                   {readable = True
-                                   ,writable = True
-                                   ,executable = False
-                                   ,searchable = True}
-                                   )
+                  setPermissions x (setOwnerExecutable False .
+                                    setOwnerWritable True .
+                                    setOwnerReadable True $ emptyPermissions)
                  ) tempfiles
 
 backtick :: String -> String -> [(String, String)]-> IO (String,Status)

