mnt: better mount flag printing
authorRobert Swiecki <robert@swiecki.net>
Sat, 28 Apr 2018 22:58:35 +0000 (00:58 +0200)
committerRobert Swiecki <robert@swiecki.net>
Sat, 28 Apr 2018 22:58:35 +0000 (00:58 +0200)
mnt.cc

diff --git a/mnt.cc b/mnt.cc
index ea20c29c177260ea6316f50f5c9987761daf8825..418602204acfde3c7cd2395dab9479f9ef4836e8 100644 (file)
--- a/mnt.cc
+++ b/mnt.cc
@@ -96,9 +96,13 @@ static const std::string flagsToStr(uintptr_t flags) {
                knownFlagMask |= mountFlags[i].flag;
        }
 
-       char flagstr[32];
-       snprintf(flagstr, sizeof(flagstr), "%#tx", flags & ~(knownFlagMask));
-       res.append(flagstr);
+       if (((flags & ~(knownFlagMask)) == 0) && !res.empty()) {
+               res.pop_back();
+       } else {
+               char flagstr[32];
+               snprintf(flagstr, sizeof(flagstr), "%#tx", flags & ~(knownFlagMask));
+               res.append(flagstr);
+       }
 
        return res;
 }