From: Michael Albinus <michael.albinus@gmx.de>
To: "Jan Djärv" <jan.h.d@swipnet.se>
Cc: Eli Zaretskii <eliz@gnu.org>, kbrown@cornell.edu, emacs-devel@gnu.org
Subject: Re: Reading D-Bus messages
Date: Sun, 26 Sep 2010 20:38:39 +0200 [thread overview]
Message-ID: <87mxr4bb9s.fsf@gmx.de> (raw)
In-Reply-To: <4C9F7563.3090608@swipnet.se> ("Jan Djärv"'s message of "Sun, 26 Sep 2010 18:31:31 +0200")
Jan Djärv <jan.h.d@swipnet.se> writes:
> I went ahead and added a more general file descriptor handling in
> process.c, where you can add a file descriptor for reading or writing
> and get a callback when I/O is possible. I then modified dbusbind to
> use that so writes also are asynchronous. If the recevier wasn't
> reading and Emacs writes a lot of DBus messages, a hang could occur
> (not that it is very likely, dbus isn't made for passing a lot of data
> around).
>
> So please try this version.
Thanks a lot, it works for me in both the X and non-X cases.
Just some minor remarks on your changes in dbusbind.c:
* dbus_fd_cb calls only xd_read_queued_messages. Couldn't both functions
be merged? Or, since we have the file descriptor in the callback,
shouldn't we call only xd_read_message for that socket?
* We assume that communication is socket base. This must not be true;
see the comment in
<http://dbus.freedesktop.org/doc/dbus/api/html/group__DBusConnection.html#gb9b8b4064fe2bc36f89f399f32979398>. If
xd_find_watch_fd returns -1, we shall raise an error at least.
> Jan D.
Best regards, Michael.
next prev parent reply other threads:[~2010-09-26 18:38 UTC|newest]
Thread overview: 44+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-09-22 13:18 Reading D-Bus messages Michael Albinus
2010-09-22 18:21 ` Ken Brown
2010-09-23 7:19 ` Michael Albinus
2010-09-23 12:16 ` Ken Brown
2010-09-23 13:42 ` Michael Albinus
2010-09-23 14:26 ` Ken Brown
2010-09-23 14:46 ` Michael Albinus
2010-09-23 20:49 ` Ken Brown
2010-09-23 21:03 ` Eli Zaretskii
2010-09-24 6:30 ` Michael Albinus
2010-09-24 8:18 ` Eli Zaretskii
2010-09-24 11:24 ` Michael Albinus
2010-09-24 14:28 ` Jan Djärv
2010-09-24 15:10 ` Michael Albinus
2010-09-24 15:31 ` Eli Zaretskii
2010-09-24 21:11 ` Michael Albinus
2010-09-25 7:19 ` Jan Djärv
2010-09-25 16:52 ` Michael Albinus
2010-09-25 18:04 ` Jan Djärv
2010-09-25 20:54 ` Michael Albinus
2010-09-26 16:31 ` Jan Djärv
2010-09-26 18:24 ` Ken Brown
2010-09-26 18:38 ` Michael Albinus [this message]
2010-09-26 19:17 ` Jan Djärv
2010-09-27 15:37 ` Michael Albinus
2010-09-27 19:36 ` Ken Brown
2010-09-27 21:23 ` Michael Albinus
2010-09-28 2:47 ` Ken Brown
2010-09-28 13:47 ` Michael Albinus
2010-09-25 21:46 ` Ken Brown
2010-09-26 0:51 ` Ken Brown
2010-09-26 6:43 ` Michael Albinus
2010-09-24 13:20 ` Ken Brown
2010-09-24 13:24 ` Eli Zaretskii
-- strict thread matches above, loose matches on Subject: below --
2009-08-12 9:43 Michael Albinus
2009-08-12 10:18 ` YAMAMOTO Mitsuharu
2009-08-12 10:43 ` Michael Albinus
2009-08-12 11:47 ` YAMAMOTO Mitsuharu
2009-08-15 19:16 ` Michael Albinus
2009-08-16 0:09 ` YAMAMOTO Mitsuharu
2009-08-16 12:30 ` Michael Albinus
2009-08-17 1:33 ` YAMAMOTO Mitsuharu
2009-08-17 4:05 ` Daniel Pittman
2009-08-18 15:24 ` Michael Albinus
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87mxr4bb9s.fsf@gmx.de \
--to=michael.albinus@gmx.de \
--cc=eliz@gnu.org \
--cc=emacs-devel@gnu.org \
--cc=jan.h.d@swipnet.se \
--cc=kbrown@cornell.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).