From: Magnus H. <leg...@us...> - 2007-05-08 12:22:54
|
Update of /cvsroot/emacs-jabber/emacs-jabber In directory sc8-pr-cvs5.sourceforge.net:/tmp/cvs-serv32081 Modified Files: jabber-util.el Log Message: Revision: ma...@fr...--2005/emacs-jabber--cvs-head--0--patch-359 Creator: Magnus Henoch <ma...@fr...> Fix jabber-replace-in-string in presence of color-theme Index: jabber-util.el =================================================================== RCS file: /cvsroot/emacs-jabber/emacs-jabber/jabber-util.el,v retrieving revision 2.46 retrieving revision 2.47 diff -u -d -r2.46 -r2.47 --- jabber-util.el 15 Apr 2007 23:53:00 -0000 2.46 +++ jabber-util.el 8 May 2007 12:22:42 -0000 2.47 @@ -24,13 +24,25 @@ (defvar jabber-jid-history nil "History of entered JIDs") +;; Define `jabber-replace-in-string' somehow. (cond + ;; Emacs 21 has replace-regexp-in-string. + ((fboundp 'replace-regexp-in-string) + (defsubst jabber-replace-in-string (str regexp newtext) + (replace-regexp-in-string regexp newtext str t t))) + ;; XEmacs has replace-in-string. However, color-theme defines it as + ;; well on Emacs 2x, so this check must be last. ((fboundp 'replace-in-string) + ;; And the version in color-theme takes only three arguments. Check + ;; just to be sure. + (condition-case nil + (replace-in-string "foobar" "foo" "bar" t) + (wrong-number-of-arguments + (error "`replace-in-string' doesn't accept fourth argument"))) (defsubst jabber-replace-in-string (str regexp newtext) (replace-in-string str regexp newtext t))) - ((fboundp 'replace-regexp-in-string) - (defsubst jabber-replace-in-string (str regexp newtext) - (replace-regexp-in-string regexp newtext str t t)))) + (t + (error "No implementation of `jabber-replace-in-string' available"))) ;;; XEmacs compatibility. Stolen from ibuffer.el (if (fboundp 'propertize) |