diff --git a/probes/results.go b/probes/results.go
index 32be2f321732d9f9dcdd490fd167242e4c353d58..88ddbc88de7c632c79e51a928c1e5dd3e8775dd6 100644
--- a/probes/results.go
+++ b/probes/results.go
@@ -106,11 +106,19 @@ func (r *memResultStore) EachErrs(f func(*Result)) {
 
 func (r *memResultStore) Find(id string) (out *Result) {
 	r.mx.Lock()
+	defer r.mx.Unlock()
 	r.last.Each(func(r *Result) {
 		if r.ID == id {
 			out = r
 		}
 	})
-	r.mx.Unlock()
+	if out != nil {
+		return
+	}
+	r.errs.Each(func(r *Result) {
+		if r.ID == id {
+			out = r
+		}
+	})
 	return
 }