Fixed a typo.
[riece] / lisp / riece-addon.el
index 90d78de..9dd1947 100644 (file)
       (if (eq (car (car pointer)) addon)
          (setq pointer nil)
        (setq pointer (cdr pointer))))
-    (if (y-or-n-p (format "%s will be insinuated.  Continue?"
-                         (mapconcat #'symbol-name addons ", ")))
-       (while addons
-         (riece-insinuate-addon-1 (car addons))
-         (setq addons (cdr addons))))))
+    (setq addons (nreverse addons))
+    (if (and (> (length addons) 1)
+            (eq verbose 'ask)
+            (not (y-or-n-p (format "%s will be insinuated.  Continue?"
+                                   (mapconcat #'symbol-name addons ", ")))))
+       (error "Insinuate operation was cancelled"))
+    (while addons
+      (riece-insinuate-addon-1 (car addons) verbose)
+      (setq addons (cdr addons)))))
 
 (defun riece-uninstall-addon (addon &optional verbose)
   (if (not (get addon 'riece-addon-insinuated))
@@ -464,7 +468,7 @@ Useful keys:
                          (lambda (pointer)
                            (not (get (car pointer) 'riece-addon-insinuated)))
                          t)))))
-  (riece-insinuate-addon addon t)
+  (riece-insinuate-addon addon 'ask)
   (when (eq major-mode 'riece-addon-list-mode)
     (riece-command-list-addons)
     (riece-addon-list-set-point addon)))