Adrian Aichner writes:
>>>>> "Kyle" == Kyle Jones
<kyle_jones(a)wonderworks.com> writes:
Kyle> Uh-oh. Have we changed the parameter list of completing-read so
Kyle> that old code is now broken? If so, this is very bad.
As Hrvoje already said, the problem is not with completing-read.
bookmark.el using a parameter not avaliable in XEmacs-21.1.8's
completing-read indiscriminately in the real problem I think.
What is recommended good practice here?
Should bookmark.el not use the new argument available in
XEmacs-21.2-b26 to stay compatible with XEmacs-21.1.8?
Should bookmark.el conditionalize on the version of XEmacs it is running in?
The way I do it in VM is call the function and if
wrong-number-of-arguments is signalled, I catch the exception and
call the function again with fewer arguments. Example:
get-buffer-window now accepts three aguments, but it wasn't
always this way.
(defun vm-get-buffer-window (buffer)
(condition-case nil
(or (get-buffer-window buffer nil nil)
(and vm-search-other-frames
(get-buffer-window buffer t t)))
(wrong-number-of-arguments
(condition-case nil
(or (get-buffer-window buffer nil)
(and vm-search-other-frames
(get-buffer-window buffer t)))
(wrong-number-of-arguments
(get-buffer-window buffer))))))