From a43ff6464bbb3cd7cc1d2abcee7c5aeae5aeddee Mon Sep 17 00:00:00 2001 From: Daniel Compton Date: Fri, 26 Jan 2018 19:32:05 +1300 Subject: [PATCH] Return correct match when filtering out event --- src/day8/re_frame/trace/subs.cljs | 3 +++ src/day8/re_frame/trace/view/debug.cljs | 1 + 2 files changed, 4 insertions(+) diff --git a/src/day8/re_frame/trace/subs.cljs b/src/day8/re_frame/trace/subs.cljs index 96dff8e..f1a97f5 100644 --- a/src/day8/re_frame/trace/subs.cljs +++ b/src/day8/re_frame/trace/subs.cljs @@ -188,6 +188,9 @@ match (cond (nil? current-id) (last (:matches epochs)) (< current-id (first match-ids)) (first (:matches epochs)) + ;; This case seems impossible, but can happen if the user filters out + ;; an event that they are 'on'. + (> current-id (last match-ids)) (last (:matches epochs)) :else (get (:matches-by-id epochs) current-id))] match))) diff --git a/src/day8/re_frame/trace/view/debug.cljs b/src/day8/re_frame/trace/view/debug.cljs index 463d114..231e6d7 100644 --- a/src/day8/re_frame/trace/view/debug.cljs +++ b/src/day8/re_frame/trace/view/debug.cljs @@ -12,6 +12,7 @@ [rc/label :label (str "Number of epochs " (prn-str @(rf/subscribe [:epochs/number-of-matches])))] [rc/label :label (str "Beginning trace " (prn-str @(rf/subscribe [:epochs/beginning-trace-id])))] [rc/label :label (str "Ending " (prn-str @(rf/subscribe [:epochs/ending-trace-id])))] + [rc/label :label (str "Current epoch ID " (prn-str @(rf/subscribe [:epochs/current-epoch-id])))] [rc/label :label "Epochs"] (let [current-match @(rf/subscribe [:epochs/current-match])]