Simplified the last change a bit.
diff --git a/flist.c b/flist.c
index c342539..5526e20 100644
--- a/flist.c
+++ b/flist.c
@@ -1524,9 +1524,8 @@
 			}
 			/* Make sure that if we unduplicate '.', that we don't
 			 * lose track of a user-specified top directory. */
-			j = flist->files[drop]->flags & (FLAG_TOP_DIR|FLAG_DEL_HERE);
-			if (j)
-				flist->files[keep]->flags |= j;
+			flist->files[keep]->flags |= flist->files[drop]->flags
+						   & (FLAG_TOP_DIR|FLAG_DEL_HERE);
 
 			clear_file(drop, flist);