diff --git a/src/modules/history_backend_mem.c b/src/modules/history_backend_mem.c
index cad23e93d..b11b8fa79 100644
--- a/src/modules/history_backend_mem.c
+++ b/src/modules/history_backend_mem.c
@@ -1139,17 +1139,7 @@ static int hbm_return_between(HistoryResult *r, HistoryLogObject *h, HistoryFilt
 	} else
 	if (direction == 0)
 	{
-		/* Create a temporary filter, swapping directions */
-		char *x, *y;
-		HistoryFilter f;
-		memset(&f, 0, sizeof(f));
-		f.cmd = HFC_BEFORE;
-		f.limit = filter->limit;
-		f.timestamp_a = filter->timestamp_b;
-		f.timestamp_b = filter->timestamp_a;
-		f.msgid_a = filter->msgid_b;
-		f.msgid_b = filter->msgid_a;
-		return hbm_return_after(r, h, &f);
+		return hbm_return_before(r, h, filter);
 	}
 	/* else direction is -1 which means not found / invalid */
 
