anchor.diff:  		     (let ((*signal-stop-emission* signal-stop-emission))
   		       (apply callback args))
   		   (signal-handler-disconnect gobject handler-id)))))
  -	  handler-id)))))
  +	  handler-id))))
   
   
   ;;;; Signal emission
  
positive.code: ;; License along with this library; if not, write to the Free Software
  ;; Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  
  ;; $Id: gcallback.lisp,v 1.21 2005-02-14 00:41:54 espen Exp $
  
  (in-package "GLIB")
  
  
negative.code: handler will be called after the default handler for the signal. If
  :REMOVE is non NIL, the handler will be removed after beeing invoked
  once."
  (let* ((signal-id (compute-signal-id gobject signal))
         (detail-quark (if detail (quark-intern detail) 0))
         (signal-stop-emission
  	#'(lambda ()
  	    (%signal-stop-emission gobject signal-id detail-quark)))
         (callback (compute-signal-function gobject signal function object))
         (wrapper #'(lambda (&rest args)
  		    (let ((*signal-stop-emission* signal-stop-emission))
  		      (apply callback args)))))
        (multiple-value-bind (closure-id callback-id)
  	  (make-callback-closure wrapper)
  	(let ((handler-id (%signal-connect-closure-by-id 
  			   gobject signal-id detail-quark closure-id after)))
  	  (when remove
  	    (update-user-data callback-id
  	     #'(lambda (&rest args)
  