diff --git a/pkgs/contract-profile/main.rkt b/pkgs/contract-profile/main.rkt index daf7f861d7..50fdc221c7 100644 --- a/pkgs/contract-profile/main.rkt +++ b/pkgs/contract-profile/main.rkt @@ -15,7 +15,14 @@ (define samples (get-times (map cdr (reverse (cdr samples*))))) (define n-samples (length contract-samples)) ;; combine blame info and stack trace info. samples should line up - (define aug-contract-samples (map cons contract-samples samples)) + (define aug-contract-samples + (if (= (length contract-samples) (length samples)) + (map cons contract-samples samples) + ;; This case happens on DrDr. Not sure how that's possible. + (begin (displayln contract-samples) + (displayln samples) + (error "contract-samples and samples are not of same length" + (length contract-samples) " vs " (length samples))))) (define live-contract-samples (filter car aug-contract-samples)) (define n-contract-samples (length live-contract-samples)) (define all-blames