branch: elpa/engine-mode
commit 7617af1c21de9dd625bbd4eda08442f4c70d944f
Author: Harry Schwartz <he...@harryrschwartz.com>
Commit: Harry Schwartz <he...@harryrschwartz.com>

    avoid multiple-evaluation issue for engine-name
---
 engine-mode.el | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/engine-mode.el b/engine-mode.el
index 444a9285b5..065af62421 100644
--- a/engine-mode.el
+++ b/engine-mode.el
@@ -86,12 +86,13 @@
        (quote ,(engine/function-name engine-name)))))
 
 (defmacro defengine (engine-name search-engine-url &optional keybinding)
-  `(progn (defun ,(engine/function-name engine-name) ()
-            ,(engine/docstring engine-name)
-            (interactive)
-            (engine/execute-search ,search-engine-url
-                                   (engine/get-query ,(symbol-name 
engine-name))))
-          ,(engine/bind-key engine-name keybinding)))
+  (let ((evaled-engine-name engine-name))
+    `(progn (defun ,(engine/function-name evaled-engine-name) ()
+              ,(engine/docstring evaled-engine-name)
+              (interactive )
+              (engine/execute-search ,search-engine-url
+                                     (engine/get-query ,(symbol-name 
evaled-engine-name))))
+            ,(engine/bind-key evaled-engine-name keybinding))))
 
 (provide 'engine-mode)
 ;;; engine-mode.el ends here

Reply via email to