diff --git a/remake.c b/remake.c
index 0888cfff..dc5ce2d0 100644
--- a/remake.c
+++ b/remake.c
@@ -349,7 +349,7 @@ update_file (struct file *file, unsigned int depth)
           {
             enum update_status new = update_file (d->file, depth + 1);
             if (new > status)
-              new = status;
+              status = new;
           }
       }