Fix doc-view problem with file names with spaces in them
* lisp/doc-view.el (doc-view-get-bounding-box): Don't bug out on file names with spaces in them (bug#33344).
This commit is contained in:
parent
be7af20e73
commit
f68a8869d1
1 changed files with 25 additions and 20 deletions
|
@ -1320,26 +1320,31 @@ dragging it to its bottom-right corner. See also
|
|||
|
||||
(defun doc-view-get-bounding-box ()
|
||||
"Get the BoundingBox information of the current page."
|
||||
(let* ((page (doc-view-current-page))
|
||||
(doc (let ((cache-doc (doc-view-current-cache-doc-pdf)))
|
||||
(if (file-exists-p cache-doc)
|
||||
cache-doc
|
||||
doc-view--buffer-file-name)))
|
||||
(o (shell-command-to-string
|
||||
(concat doc-view-ghostscript-program
|
||||
" -dSAFER -dBATCH -dNOPAUSE -q -sDEVICE=bbox "
|
||||
(format "-dFirstPage=%s -dLastPage=%s %s"
|
||||
page page doc)))))
|
||||
(save-match-data
|
||||
(when (string-match (concat "%%BoundingBox: "
|
||||
"\\([[:digit:]]+\\) \\([[:digit:]]+\\) "
|
||||
"\\([[:digit:]]+\\) \\([[:digit:]]+\\)")
|
||||
o)
|
||||
(mapcar #'string-to-number
|
||||
(list (match-string 1 o)
|
||||
(match-string 2 o)
|
||||
(match-string 3 o)
|
||||
(match-string 4 o)))))))
|
||||
(let ((page (doc-view-current-page))
|
||||
(doc (let ((cache-doc (doc-view-current-cache-doc-pdf)))
|
||||
(if (file-exists-p cache-doc)
|
||||
cache-doc
|
||||
doc-view--buffer-file-name))))
|
||||
(with-temp-buffer
|
||||
(when (eq 0 (ignore-errors
|
||||
(process-file doc-view-ghostscript-program nil t
|
||||
nil "-dSAFER" "-dBATCH" "-dNOPAUSE" "-q"
|
||||
"-sDEVICE=bbox"
|
||||
(format "-dFirstPage=%s" page)
|
||||
(format "-dLastPage=%s" page)
|
||||
doc)))
|
||||
(goto-char (point-min))
|
||||
(save-match-data
|
||||
(when (re-search-forward
|
||||
(concat "%%BoundingBox: "
|
||||
"\\([[:digit:]]+\\) \\([[:digit:]]+\\) "
|
||||
"\\([[:digit:]]+\\) \\([[:digit:]]+\\)")
|
||||
nil t)
|
||||
(mapcar #'string-to-number
|
||||
(list (match-string 1)
|
||||
(match-string 2)
|
||||
(match-string 3)
|
||||
(match-string 4)))))))))
|
||||
|
||||
(defvar doc-view-paper-sizes
|
||||
'((a4 595 842)
|
||||
|
|
Loading…
Add table
Reference in a new issue