v2 (erc-display-line redux). Fix initial bug involving missing text props on multi-buffer calls to `erc-display-line'. Convert latter to internal function and reimplement interface as high-level wrapper around `erc-display-message'. "J.P." writes: > "J.P." writes: > >> These changes introduced a(t least one) bug. To reproduce, call >> `erc-display-line' with a list of buffers, and notice only the first >> sees its message inserted with the correct text properties. A quick way >> to simulate this is by having two clients join the same two channels >> and then having one quit. The expected text props will be missing from >> one of the inserted >> >> *** someuser (n!~u@h) has quit >> >> messages. Verify by going to the first asterisk and doing C-u C-x =. >> >> Fix forthcoming. > > The second of the attached patches should hopefully do the trick. Actually, merely hoping folks will use `erc-display-message' instead of `erc-display-line' is surely delusional. There's likely far too much code out there doing stuff like: (erc-display-line (erc-make-notice "foo") my-buffer) So I've instead converted `erc-display-line' into a high-level insertion function more aligned with the manner in which it's used in practice. It's now more or less a thin wrapper around `erc-display-message' with a bit of special casing to intercept instances of the `erc-make-notice' pattern above for rewriting as: (erc-display-message nil 'notice my-buffer "foo") Hopefully, this is an acceptable compromise.