aboutsummaryrefslogtreecommitdiffstats
path: root/src/directory_save.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/directory_save.c')
-rw-r--r--src/directory_save.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/src/directory_save.c b/src/directory_save.c
index 7b2668bc7..b009b1ef5 100644
--- a/src/directory_save.c
+++ b/src/directory_save.c
@@ -28,7 +28,7 @@
#include <assert.h>
#include <string.h>
-#define DIRECTORY_MTIME "mtime: " /* DEPRECATED, noop-read-only */
+#define DIRECTORY_MTIME "mtime: "
#define DIRECTORY_BEGIN "begin: "
#define DIRECTORY_END "end: "
@@ -41,6 +41,9 @@ directory_save(FILE *fp, struct directory *directory)
int retv;
if (!directory_is_root(directory)) {
+ fprintf(fp, DIRECTORY_MTIME "%lu\n",
+ (unsigned long)directory->mtime);
+
retv = fprintf(fp, "%s%s\n", DIRECTORY_BEGIN,
directory_get_path(directory));
if (retv < 0)
@@ -84,8 +87,12 @@ directory_load(FILE *fp, struct directory *directory)
strcpy(key, &(buffer[strlen(DIRECTORY_DIR)]));
if (!fgets(buffer, sizeof(buffer), fp))
FATAL("Error reading db, fgets\n");
- /* for compatibility with db's prior to 0.11 */
+
if (g_str_has_prefix(buffer, DIRECTORY_MTIME)) {
+ directory->mtime =
+ g_ascii_strtoull(buffer + sizeof(DIRECTORY_MTIME) - 1,
+ NULL, 10);
+
if (!fgets(buffer, sizeof(buffer), fp))
FATAL("Error reading db, fgets\n");
}