diff --git a/mnt.cc b/mnt.cc
index 5c36490..007f839 100644
--- a/mnt.cc
+++ b/mnt.cc
@@ -90,16 +90,16 @@
 	uintptr_t knownFlagMask = 0U;
 	for (const auto& i : mountFlags) {
 		if (flags & i.flag) {
+			if (!res.empty()) {
+				res.append("|");
+			}
 			res.append(i.name);
-			res.append("|");
 		}
 		knownFlagMask |= i.flag;
 	}
 
-	if (((flags & ~(knownFlagMask)) == 0) && !res.empty()) {
-		res.pop_back();
-	} else {
-		util::StrAppend(&res, "%#tx", flags & ~(knownFlagMask));
+	if (flags & ~(knownFlagMask)) {
+		util::StrAppend(&res, "|%#tx", flags & ~(knownFlagMask));
 	}
 
 	return res;
@@ -543,9 +543,9 @@
 	    .append(mpt.src.empty() ? "" : mpt.src)
 	    .append(mpt.src.empty() ? "" : "' -> '")
 	    .append(mpt.dst)
-	    .append("' flags:'")
+	    .append("' flags:")
 	    .append(flagsToStr(mpt.flags))
-	    .append("' type:'")
+	    .append(" type:'")
 	    .append(mpt.fs_type)
 	    .append("' options:'")
 	    .append(mpt.options)
