Forráskód Böngészése

org-protocol: Do not catch all errors when providing backward compatibility

* lisp/org-protocol.el (org-protocol-check-filename-for-protocol): Do
  not catch every error so as to ease old style support.  Re-format
  code to fit within 80 columns.

Reported-by: Adam Porter <adam@alphapapa.net>
<http://permalink.gmane.org/gmane.emacs.orgmode/113102>
Nicolas Goaziou 8 éve
szülő
commit
137c6ad658
1 módosított fájl, 14 hozzáadás és 9 törlés
  1. 14 9
      lisp/org-protocol.el

+ 14 - 9
lisp/org-protocol.el

@@ -596,11 +596,14 @@ CLIENT is ignored."
   (let ((sub-protocols (append org-protocol-protocol-alist
 			       org-protocol-protocol-alist-default)))
     (catch 'fname
-      (let ((the-protocol (concat (regexp-quote org-protocol-the-protocol) ":/+")))
+      (let ((the-protocol (concat (regexp-quote org-protocol-the-protocol)
+				  ":/+")))
         (when (string-match the-protocol fname)
           (dolist (prolist sub-protocols)
-            (let ((proto (concat the-protocol
-				 (regexp-quote (plist-get (cdr prolist) :protocol)) "\\(:/+\\|\\?\\)")))
+            (let ((proto
+		   (concat the-protocol
+			   (regexp-quote (plist-get (cdr prolist) :protocol))
+			   "\\(:/+\\|\\?\\)")))
               (when (string-match proto fname)
                 (let* ((func (plist-get (cdr prolist) :function))
                        (greedy (plist-get (cdr prolist) :greedy))
@@ -613,12 +616,14 @@ CLIENT is ignored."
                   (when (fboundp func)
                     (unless greedy
                       (throw 'fname
-			     (condition-case nil
-				 (funcall func (org-protocol-parse-parameters result new-style))
-			       (error
-				(warn "Please update your org protocol handler to deal with new-style links.")
-				(funcall func result)))))
-		    ;; Greedy protocol handlers are responsible for parsing their own filenames
+			     (if new-style
+				 (funcall func (org-protocol-parse-parameters
+						result new-style))
+			       (warn "Please update your Org Protocol handler \
+to deal with new-style links.")
+			       (funcall func result))))
+		    ;; Greedy protocol handlers are responsible for
+		    ;; parsing their own filenames.
 		    (funcall func result)
                     (throw 'fname t))))))))
       fname)))