summaryrefslogtreecommitdiff
path: root/lisp/progmodes/idlwave.el
diff options
context:
space:
mode:
authorGlenn Morris <rgm@gnu.org>2013-05-29 00:18:09 -0700
committerGlenn Morris <rgm@gnu.org>2013-05-29 00:18:09 -0700
commit03983bdcc404a0e813857be4f5abae4849b47d91 (patch)
tree8922ec6965c206f353051155216f8431f9cf77b5 /lisp/progmodes/idlwave.el
parentf236dd8432cad5f39088e4b99a44478e21930e4d (diff)
downloademacs-03983bdcc404a0e813857be4f5abae4849b47d91.tar.gz
idlwave-concatenate-rinfo-lists fix
* progmodes/idlwave.el (idlwave-concatenate-rinfo-lists): Handle idlwave-last-system-routine-info-cons-cell being nil. This seems to prevent an error on typing `C-c TAB', idlwave-update-routine-info, in an idlwave buffer.
Diffstat (limited to 'lisp/progmodes/idlwave.el')
-rw-r--r--lisp/progmodes/idlwave.el13
1 files changed, 8 insertions, 5 deletions
diff --git a/lisp/progmodes/idlwave.el b/lisp/progmodes/idlwave.el
index cbcd2f9d10e..ba9a632b949 100644
--- a/lisp/progmodes/idlwave.el
+++ b/lisp/progmodes/idlwave.el
@@ -5078,11 +5078,14 @@ Cache to disk for quick recovery."
;; The sequence here is important because earlier definitions shadow
;; later ones. We assume that if things in the buffers are newer
;; then in the shell of the system, they are meant to be different.
- (setcdr idlwave-last-system-routine-info-cons-cell
- (append idlwave-buffer-routines
- idlwave-compiled-routines
- idlwave-library-catalog-routines
- idlwave-user-catalog-routines))
+ (let ((temp (append idlwave-buffer-routines
+ idlwave-compiled-routines
+ idlwave-library-catalog-routines
+ idlwave-user-catalog-routines)))
+ ;; Not actually used for anything?
+ (if idlwave-last-system-routine-info-cons-cell
+ (setcdr idlwave-last-system-routine-info-cons-cell temp)
+ (setq idlwave-last-system-routine-info-cons-cell (cons temp nil))))
(setq idlwave-class-alist nil)
;; Give a message with information about the number of routines we have.