diff --git a/lisp/forge-gitlab.el b/lisp/forge-gitlab.el index a087b6ca..49ba74ec 100644 --- a/lisp/forge-gitlab.el +++ b/lisp/forge-gitlab.el @@ -504,18 +504,20 @@ (oset repo topic-templates (mapcan (pcase-lambda (`(,type . ,dir)) - (seq-keep (lambda (file) - (let* ((file (file-name-nondirectory file)) - (name (file-name-sans-extension file))) - (and (equal (file-name-extension file) "md") - (list (forge--object-id repoid name) - type file name nil nil - (with-temp-buffer - (insert-file-contents file) - (buffer-str)) - nil nil nil nil nil)))) - (magit-git-items "ls-tree" "-z" "--full-tree" - "--name-only" "-r" branch "--" dir))) + (seq-keep + (lambda (path) + (let* ((file (file-name-nondirectory path)) + (name (file-name-sans-extension file))) + (and (equal (file-name-extension file) "md") + (list (forge--object-id repoid name) + type file name nil nil + (with-temp-buffer + (magit-git-insert "cat-file" "-p" + (concat branch ":" path)) + (buffer-str)) + nil nil nil nil nil)))) + (magit-git-items "ls-tree" "-z" "--full-tree" + "--name-only" "-r" branch "--" dir))) '((issue . ".gitlab/issue_templates") (pullreq . ".gitlab/merge_request_templates"))))))