This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Emacs and DBUS


On 8/26/2010 12:16 AM, Michael Albinus wrote:
Ken Brown writes:

The blocking you observed when dbus.el is loaded doesn't occur with a
build from the Emacs trunk (r101187).

Correction: It occurs if and only if the system messagebus service is running.

I'm confused: do you mean, the problem is happening when the system bus is running, or when it is *not* running? I suspect the latter case.

I really meant it the way I said it: The problem occurs if the system bus *is* running. I've done some further testing, and here are the results, all with a build of emacs from the trunk, starting in the emacs src directory.


1. With the system bus not running, I start Emacs via 'dbus-launch ./emacs.exe -Q&' and load dbus.el. In the *scratch* buffer I evaluate some of the expressions that you suggested in your earlier email:

(dbus-get-unique-name :session)
":1.0"
(defun my-dbus-signal-handler (&rest args)
(message "Signal from bus %s received: %s"
(dbus-event-bus-name last-input-event) args))
my-dbus-signal-handler
(dbus-register-signal
:session dbus-service-dbus dbus-path-dbus dbus-interface-dbus
"NameOwnerChanged" 'my-dbus-signal-handler)
((:session "org.freedesktop.DBus" "NameOwnerChanged") ("org.freedesktop.DBus" "/org/freedesktop/DBus" my-dbus-signal-handler))


Now I try 'dbus-monitor --session' in the xterm window from which I started emacs. This produces output in the xterm window, but I don't see anything in Emacs.

Back to *scratch*:

(dbus-get-unique-name :system)

This throws me into the lisp debugger with the error (dbus-error "Failed to connect to socket /var/run/dbus/system_bus_socket: Connection refused"). I guess this is to be expected, since the system bus is not running. I now start the system bus via 'net start messagebus' in a shell, and I try again:

(dbus-get-unique-name :system)
":1.0"

Is this to be expected, that I get the same name for :system that I got for :session?

2. With the system bus running, I start Emacs as above and load dbus.el. The cursor stops blinking, and Emacs becomes unresponsive. I can type C-g and hear a bell, and I can type C-x C-c to exit, but I can't get a response to any other key presses.

I'm willing to try anything else you suggest. Otherwise, I hope you're able to debug this when you return from your travels. The unstripped emacs-X11.exe binary (Emacs 23.2) is at

http://www.math.cornell.edu/~kbrown/emacs-X11.exe.bz2

and the binary for my build from the trunk is at

http://www.math.cornell.edu/~kbrown/emacs.exe.bz2

Ken

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]