branch: elpa/pdf-tools
commit ce2da3ba62c06e12a79ea8abb6b3f37cf48e7d9c
Author: Vedang Manerikar <[email protected]>
Commit: Vedang Manerikar <[email protected]>

    fix(pdf-virtual): use correct key function for filtering page links
    
    The pdf-virtual-pagelinks function was passing 'car as the key function
    to pdf-virtual--filter-edges, which caused a type error when processing
    links in cropped virtual PDF pages. The link structure is an alist, so
    the correct key function extracts edges via (cdr (assq 'edges link)).
    
    Fixes #327
---
 lisp/pdf-virtual.el | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lisp/pdf-virtual.el b/lisp/pdf-virtual.el
index f8ecf970ad4..4432ca401b7 100644
--- a/lisp/pdf-virtual.el
+++ b/lisp/pdf-virtual.el
@@ -800,7 +800,8 @@ unless the FILE-OR-BUFFER argument denotes a VPDF document."
                link
              `((edges .  ,(pdf-util-edges-transform region .edges t))
                ,@(pdf-virtual--transform-goto-dest link filename region)))))
-       (pdf-virtual--filter-edges region (car links) 'car)))))
+       (pdf-virtual--filter-edges region (car links)
+                                  (lambda (link) (cdr (assq 'edges link))))))))
 
 (pdf-virtual-define-adapter number-of-pages (&optional file-or-buffer)
   (pdf-info-compose-queries nil (pdf-virtual-document-number-of-pages)))

Reply via email to