diff --git a/extra/builder/builder.factor b/extra/builder/builder.factor
index 4cd2613e8d..2b51f8603e 100644
--- a/extra/builder/builder.factor
+++ b/extra/builder/builder.factor
@@ -65,12 +65,6 @@ IN: builder
 
 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
-! : factor-binary ( -- name )
-!   os "macosx" =
-!     [ "./Factor.app/Contents/MacOS/factor" ]
-!     [ "./factor" ]
-!   if ;
-
 : bootstrap-cmd ( -- cmd )
   { "./factor" { "-i=" my-boot-image-name } "-no-user-init" } to-strings ;
 
@@ -146,7 +140,11 @@ SYMBOL: build-status
     
     show-benchmark-deltas
 
-    "../benchmarks" "../../benchmarks" copy-file    
+    "../benchmarks" "../../benchmarks" copy-file
+
+    ".." cd
+
+    maybe-release
 
   ] with-file-writer
 
@@ -167,7 +165,7 @@ SYMBOL: builder-recipients
     builder-from get        >>from
     builder-recipients get  >>to
     subject                 >>subject
-    "../report" file>string >>body
+    "./report" file>string >>body
   send ;
 
 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
@@ -176,11 +174,11 @@ SYMBOL: builder-recipients
   { "bzip2" my-boot-image-name } to-strings run-process drop ;
 
 : build ( -- )
-  [ (build) ] [ drop ] recover
-  build-status get [ maybe-release ] when
+  [ (build) ] failsafe
+  builds cd stamp> cd
   [ send-builder-email ] [ drop "not sending mail" . ] recover
-  ".." cd { "rm" "-rf" "factor" } run-process drop
-  [ compress-image ] [ drop ] recover ;
+  { "rm" "-rf" "factor" } run-process drop
+  [ compress-image ] failsafe ;
 
 ! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
 
@@ -215,8 +213,7 @@ USE: bootstrap.image.download
       [ build ]
     when
   ]
-  [ drop ]
-  recover
+  failsafe
   5 minutes sleep
   build-loop ;
 
diff --git a/extra/builder/release/release.factor b/extra/builder/release/release.factor
index eb947ff14f..403ead78cd 100644
--- a/extra/builder/release/release.factor
+++ b/extra/builder/release/release.factor
@@ -64,6 +64,8 @@ USING: system sequences splitting ;
 
 : linux-release ( -- )
 
+  "factor" cd
+
   { "rm" "-rf" "Factor.app" } run-process drop
 
   { "rm" "-rf" common-files } to-strings run-process drop
@@ -78,6 +80,8 @@ USING: system sequences splitting ;
 
 : windows-release ( -- )
 
+  "factor" cd
+
   { "rm" "-rf" "Factor.app" } run-process drop
 
   { "rm" "-rf" common-files } to-strings run-process drop
@@ -92,6 +96,8 @@ USING: system sequences splitting ;
 
 : macosx-release ( -- )
 
+  "factor" cd
+
   { "rm" "-rf" common-files } to-strings run-process drop
 
   ".." cd
diff --git a/extra/builder/util/util.factor b/extra/builder/util/util.factor
index 3d699d4ba8..a838eced6d 100644
--- a/extra/builder/util/util.factor
+++ b/extra/builder/util/util.factor
@@ -104,4 +104,8 @@ USING: bootstrap.image bootstrap.image.download io.streams.null ;
 
 USE: prettyprint
 
-: to-file ( object file -- ) [ . ] with-file-writer ;
\ No newline at end of file
+: to-file ( object file -- ) [ . ] with-file-writer ;
+
+! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
+
+: failsafe ( quot -- ) [ drop ] recover ;
\ No newline at end of file