diff --git a/src/or/main.c b/src/or/main.c
index 4d252faf209eb23e0d046f433c8422238072eaca..8bfea7895e1f890dbf57b28f25cc2dd2310bfa8d 100644
--- a/src/or/main.c
+++ b/src/or/main.c
@@ -3265,7 +3265,7 @@ try_locking(const or_options_t *options, int err_if_locked)
         r = try_locking(options, 0);
         if (r<0) {
           log_err(LD_GENERAL, "No, it's still there.  Exiting.");
-          exit(1); // XXXX bad exit
+          return -1;
         }
         return r;
       }