chiark / gitweb /
journal: abstract the resetting of JournalFile's location
authorMichal Schmidt <mschmidt@redhat.com>
Tue, 16 Dec 2014 19:54:56 +0000 (20:54 +0100)
committerMichal Schmidt <mschmidt@redhat.com>
Thu, 18 Dec 2014 10:56:19 +0000 (11:56 +0100)
src/journal/journal-file.c
src/journal/journal-file.h
src/journal/sd-journal.c

index efe14b0d921634f002e0bb868c8ce2d0def44db0..8cbdbb9f9634557119011ec7c4ba1057c094ad43 100644 (file)
@@ -1928,6 +1928,10 @@ int journal_file_move_to_entry_by_monotonic(
                                              ret, offset, NULL);
 }
 
                                              ret, offset, NULL);
 }
 
+void journal_file_reset_location(JournalFile *f) {
+        f->current_offset = 0;
+}
+
 int journal_file_next_entry(
                 JournalFile *f,
                 Object *o, uint64_t p,
 int journal_file_next_entry(
                 JournalFile *f,
                 Object *o, uint64_t p,
index b14d0fc3e3f3266f3fd25cb2cac414b8c91152cb..3a19827fb75334ab17c5aa419238cfffde1e2d29 100644 (file)
@@ -189,6 +189,7 @@ int journal_file_find_data_object_with_hash(JournalFile *f, const void *data, ui
 int journal_file_find_field_object(JournalFile *f, const void *field, uint64_t size, Object **ret, uint64_t *offset);
 int journal_file_find_field_object_with_hash(JournalFile *f, const void *field, uint64_t size, uint64_t hash, Object **ret, uint64_t *offset);
 
 int journal_file_find_field_object(JournalFile *f, const void *field, uint64_t size, Object **ret, uint64_t *offset);
 int journal_file_find_field_object_with_hash(JournalFile *f, const void *field, uint64_t size, uint64_t hash, Object **ret, uint64_t *offset);
 
+void journal_file_reset_location(JournalFile *f);
 int journal_file_next_entry(JournalFile *f, Object *o, uint64_t p, direction_t direction, Object **ret, uint64_t *offset);
 
 int journal_file_next_entry_for_data(JournalFile *f, Object *o, uint64_t p, uint64_t data_offset, direction_t direction, Object **ret, uint64_t *offset);
 int journal_file_next_entry(JournalFile *f, Object *o, uint64_t p, direction_t direction, Object **ret, uint64_t *offset);
 
 int journal_file_next_entry_for_data(JournalFile *f, Object *o, uint64_t p, uint64_t data_offset, direction_t direction, Object **ret, uint64_t *offset);
index 72c9770a99b0402004d9264d351284de4663b8cf..adaf402f46ced2781f32b590444dd80f390b6c27 100644 (file)
@@ -87,7 +87,7 @@ static void detach_location(sd_journal *j) {
         j->current_field = 0;
 
         ORDERED_HASHMAP_FOREACH(f, j->files, i)
         j->current_field = 0;
 
         ORDERED_HASHMAP_FOREACH(f, j->files, i)
-                f->current_offset = 0;
+                journal_file_reset_location(f);
 }
 
 static void reset_location(sd_journal *j) {
 }
 
 static void reset_location(sd_journal *j) {