diff --git a/extra/tar/tar.factor b/extra/tar/tar.factor
index abd97d2b06..09db6b2e63 100644
--- a/extra/tar/tar.factor
+++ b/extra/tar/tar.factor
@@ -221,7 +221,7 @@ M: symbolic-link do-link
 ! FIXME: linux tar calls unlinkat and makelinkat
 : make-links ( -- )
     to-link get [
-        [ name>> delete-file ] [ do-link ] bi
+        [ [ name>> delete-file ] [ 2drop ] recover ] [ do-link ] bi
     ] each ;
 
 : untar ( path -- )