@@ -52,6 +52,13 @@ def wait(self):
5252
5353#{ Decorators
5454
55+ def _mktemp (* args ):
56+ """Wrapper around default tempfile.mktemp to fix an osx issue"""
57+ tdir = tempfile .mktemp (* args )
58+ if sys .platform == 'darwin' :
59+ tdir = '/private' + tdir
60+ return tdir
61+
5562def _rmtree_onerror (osremove , fullpath , exec_info ):
5663 """
5764 Handle the case on windows that read-only files cannot be deleted by
@@ -80,7 +87,7 @@ def repo_creator(self):
8087 if bare :
8188 prefix = ''
8289 #END handle prefix
83- repo_dir = tempfile . mktemp ("%sbare_%s" % (prefix , func .__name__ ))
90+ repo_dir = _mktemp ("%sbare_%s" % (prefix , func .__name__ ))
8491 rw_repo = self .rorepo .clone (repo_dir , shared = True , bare = bare , n = True )
8592
8693 rw_repo .head .commit = rw_repo .commit (working_tree_ref )
@@ -136,8 +143,8 @@ def case(self, rw_repo, rw_remote_repo)
136143 assert isinstance (working_tree_ref , basestring ), "Decorator requires ref name for working tree checkout"
137144 def argument_passer (func ):
138145 def remote_repo_creator (self ):
139- remote_repo_dir = tempfile . mktemp ("remote_repo_%s" % func .__name__ )
140- repo_dir = tempfile . mktemp ("remote_clone_non_bare_repo" )
146+ remote_repo_dir = _mktemp ("remote_repo_%s" % func .__name__ )
147+ repo_dir = _mktemp ("remote_clone_non_bare_repo" )
141148
142149 rw_remote_repo = self .rorepo .clone (remote_repo_dir , shared = True , bare = True )
143150 rw_repo = rw_remote_repo .clone (repo_dir , shared = True , bare = False , n = True ) # recursive alternates info ?
0 commit comments