diff --git a/src/text.c b/src/text.c
index 6b9399ef3c9fbfb7c73400b82f6f6f7cf08f2ffd..638acc7af759a6ae4dc409c41d858a89c03d6dbd 100644
--- a/src/text.c
+++ b/src/text.c
@@ -2439,6 +2439,10 @@ void do_justify(bool full_justify)
     if (first_par_line != NULL)
 	last_par_line = openfile->current;
 
+    /* Let a justification cancel a soft mark. */
+    if (openfile->mark && openfile->kind_of_mark == SOFTMARK)
+	openfile->mark = NULL;
+
     edit_refresh();
 
     /* Show "Unjustify" in the help lines. */