From 837a532d5f2bda59e1d0a9fc35fd652b69780822 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dominik=20Pant=C5=AF=C4=8Dek?= Date: Mon, 15 May 2023 20:01:27 +0200 Subject: [PATCH] Support single-key headers in git blame. --- src/util-git.scm | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/src/util-git.scm b/src/util-git.scm index cb187f3..d4c5ca7 100644 --- a/src/util-git.scm +++ b/src/util-git.scm @@ -114,6 +114,7 @@ blames (cons blame blames))) (let ((line (car lines))) + (print line) (cond ((ldict-empty? blame) ;; First row - commit (let ((ll (string-split line))) @@ -129,15 +130,19 @@ blames)))) (else ;; Any header - (let* ((kv (parser-parse-line line)) - (k (car kv)) - (v (cdr kv)) - (v1 (case k - ((committer-time) - (seconds->iso-date-string (string->number v))) - (else v)))) - (loop (cdr lines) - (ldict-set blame k v1) - blames)))))))) + (let ((kv (parser-parse-line line))) + (if (pair? kv) + (let* ((k (car kv)) + (v (cdr kv)) + (v1 (case k + ((committer-time) + (seconds->iso-date-string (string->number v))) + (else v)))) + (loop (cdr lines) + (ldict-set blame k v1) + blames)) + (loop (cdr lines) + blame + blames))))))))) )