MochiKit.Signal.connect(src, signal, dst, func) uses inconsistent function lookup "dst[func]". For DOM signals, late lookup is used, performing dst[func] whenever a signal is emitted. For other signals, connect() binds the dst[func] function immediately.
I think this behaviour should be consistent.
Here is some code to illustrate the issue:
var obj1 = MochiKit.DOM.DIV();
var obj2 = {};
var dst = {
handler1: function() { alert("handler1"); },
handler2: function() { alert("handler2"); }
}
MochiKit.Signal.connect(obj1, "onclick", dst, "handler1");
MochiKit.Signal.connect(obj2, "onclick", dst, "handler1");
dst.handler1 = dst.handler2;
MochiKit.Signal.signal(obj1, "onclick");
MochiKit.Signal.signal(obj2, "onclick");