summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/metaentry.c15
-rw-r--r--src/metaentry.h2
-rw-r--r--src/metastore.c2
3 files changed, 12 insertions, 7 deletions
diff --git a/src/metaentry.c b/src/metaentry.c
index 9956f7f..7e90290 100644
--- a/src/metaentry.c
+++ b/src/metaentry.c
@@ -911,7 +911,7 @@ mentries_compare(struct metahash *mhashreal,
/* Dumps given metadata */
void
-mentries_dump(struct metahash *mhash)
+mentries_dump(struct metahash *mhash, int with_mtime)
{
const struct metaentry *mentry;
char mode[11 + 1] = "";
@@ -923,18 +923,23 @@ mentries_dump(struct metahash *mhash)
for (int key = 0; key < HASH_INDEXES; key++) {
for (mentry = mhash->bucket[key]; mentry; mentry = mentry->next) {
strmode(mentry->mode, mode);
- if (mentry->mtimensec == MTIME_NONE) {
- snprintf(date, sizeof(date), "%19s", "");
+ if (!with_mtime) {
+ date[0] = '\0';
+ nsec[0] = '\0';
+ zone[0] = '\0';
+ }
+ else if (mentry->mtimensec == MTIME_NONE) {
+ snprintf(date, sizeof(date), "\t%19s", "");
snprintf(nsec, sizeof(nsec), "%10s", "");
snprintf(zone, sizeof(zone), "%6s", "");
}
else {
localtime_r(&mentry->mtime, &cal);
- strftime(date, sizeof(date), "%F %T", &cal);
+ strftime(date, sizeof(date), "\t%F %T", &cal);
snprintf(nsec, sizeof(nsec), ".%09ld", mentry->mtimensec);
strftime(zone, sizeof(zone), " %z", &cal);
}
- printf("%s\t%s\t%s\t%s%s%s\t%s%s\n",
+ printf("%s\t%s\t%s%s%s%s\t%s%s\n",
mode,
mentry->owner, mentry->group,
date, nsec, zone,
diff --git a/src/metaentry.h b/src/metaentry.h
index 6c97961..fd28c17 100644
--- a/src/metaentry.h
+++ b/src/metaentry.h
@@ -94,6 +94,6 @@ void mentries_compare(struct metahash *mhashreal,
int cmp),
msettings *st);
-void mentries_dump(struct metahash *mhash);
+void mentries_dump(struct metahash *mhash, int with_mtime);
#endif /* METAENTRY_H */
diff --git a/src/metastore.c b/src/metastore.c
index bc5787e..2f6d9bc 100644
--- a/src/metastore.c
+++ b/src/metastore.c
@@ -585,7 +585,7 @@ main(int argc, char **argv)
fixup_newemptydirs();
break;
case ACTION_DUMP:
- mentries_dump(real ? real : stored);
+ mentries_dump(real ? real : stored, settings.do_mtime >= 0);
break;
}