richardphibel / rpms / systemd

Forked from rpms/systemd 2 years ago
Clone
65878a
From 5284c03b3bc881c4b79b1afb32284dd86ab836f5 Mon Sep 17 00:00:00 2001
65878a
From: Lennart Poettering <lennart@poettering.net>
65878a
Date: Wed, 27 Nov 2013 00:58:39 +0100
65878a
Subject: [PATCH] journal: fix iteration when we go backwards from the
65878a
 beginning of an array chain element
65878a
65878a
---
65878a
 src/journal/journal-file.c | 2 +-
65878a
 1 file changed, 1 insertion(+), 1 deletion(-)
65878a
65878a
diff --git a/src/journal/journal-file.c b/src/journal/journal-file.c
65878a
index 7adb1b5..53dd0c3 100644
65878a
--- a/src/journal/journal-file.c
65878a
+++ b/src/journal/journal-file.c
65878a
@@ -1687,7 +1687,7 @@ found:
65878a
                 return 0;
65878a
 
65878a
         /* Let's cache this item for the next invocation */
65878a
-        chain_cache_put(f->chain_cache, ci, first, a, array->entry_array.items[0], t, i + (subtract_one ? -1 : 0));
65878a
+        chain_cache_put(f->chain_cache, ci, first, a, array->entry_array.items[0], t, subtract_one ? (i > 0 ? i-1 : (uint64_t) -1) : i);
65878a
 
65878a
         if (subtract_one && i == 0)
65878a
                 p = last_p;