1
Fork 0
mirror of git://git.sv.gnu.org/emacs.git synced 2026-01-08 12:40:49 -08:00
Commit graph

84 commits

Author SHA1 Message Date
Glenn Morris
0d9f702fd0 Nuke arch-tags. 2011-01-15 15:16:57 -08:00
Michael Albinus
2bc92a930d * dbusbind.c (Fdbus_register_service): Raise an error in case of
unexpected return values.
(Fdbus_register_method): Remove connection initialization.
2011-01-10 12:28:31 +01:00
Michael Albinus
5b83ba185d * dbusbind.c (QCdbus_request_name_allow_replacement): New symbol;
used by Fdbus_register_service.
(QCdbus_request_name_replace_existing): Likewise.
(QCdbus_request_name_do_not_queue): Likewise.
(QCdbus_request_name_reply_primary_owner): Likewise.
(QCdbus_request_name_reply_in_queue): Likewise.
(QCdbus_request_name_reply_exists): Likewise.
(QCdbus_request_name_reply_already_owner): Likewise.
(Fdbus_register_service): New function.
(Fdbus_register_method): Use Fdbus_register_service to do the name
registration.
(syms_of_dbusbind): Add symbols dbus-register-service,
:allow-replacement, :replace-existing, :do-not-queue,
:primary-owner, :existing, :in-queue and :already-owner.
2011-01-10 10:56:17 +01:00
Michael Albinus
6ed843e5b8 * dbusbind.c (Fdbus_register_method): Added optional parameter
dont_register_service.  Updated docstring accordingly.
2011-01-04 12:11:43 +01:00
Michael Albinus
01768686d4 Fix syntax error in previous commit. 2010-11-10 10:08:05 +01:00
Michael Albinus
da1fec2bc1 * dbusbind.c (QCdbus_type_unix_fd): New Lisp object.
(XD_BASIC_DBUS_TYPE, xd_symbol_to_dbus_type, xd_signature)
(xd_append_arg, xd_retrieve_arg): Support DBUS_TYPE_UNIX_FD.
(Fdbus_call_method): Add DBUS_TYPE_UNIX_FD type mapping to doc string.
(syms_of_dbusbind): Initialize QCdbus_type_unix_fd).
2010-11-10 09:48:18 +01:00
Chong Yidong
91fd0b7281 Fix error in last merge from branch.
Remove 2010-10-25 commit by Michael Albinus to dbusbind.c, which is
not intended for trunk.
2010-11-01 11:18:42 -04:00
Chong Yidong
2699a55464 Merge changes from emacs-23 branch 2010-10-31 10:40:01 -04:00
Michael Albinus
655441b28a * dbusbind.c (Fdbus_call_method_asynchronously)
(Fdbus_register_signal, Fdbus_register_method): Check, whether
`dbus-registered-objects-table' is initialized.

Must not be synchronized with the trunk.
2010-10-25 13:46:21 +02:00
Michael Albinus
2e828c79a3 * dbusbind.c (xd_get_dispatch_status): Return a Lisp_Object.
(xd_pending_messages): Catch xd_get_dispatch_status calls.
2010-10-08 13:40:23 +02:00
Juanma Barranquero
4628bef1ee Merge changes from emacs-23 branch. 2010-10-08 12:14:47 +02:00
Michael Albinus
a79b0f2863 * dbusbind.c (syms_of_dbusbind): Move putenv call ...
(Fdbus_init_bus): ... here.  (Bug#7113)
2010-10-03 11:23:07 +02:00
Dan Nicolaescu
4cacd822d1 Do not include stdlib.h and string.h, config.h does it.
* src/xfont.c:
* src/w32term.c:
* src/w32reg.c:
* src/w32inevt.c:
* src/w32heap.c:
* src/w32console.c:
* src/w16select.c:
* src/unexsol.c:
* src/term.c:
* src/sound.c:
* src/scroll.c (m):
* src/gtkutil.c:
* src/font.c:
* src/filelock.c:
* src/fileio.c:
* src/dosfns.c:
* src/dbusbind.c:
* src/bidi.c:
* src/callproc.c:
* src/process.c:
* src/msdos.c:
* src/charset.c: Do not include stdlib.h and string.h, config.h does it.

* configure.in: Include stdlib.h and string.h unconditionally.
2010-10-01 06:56:33 -07:00
Michael Albinus
dec8346846 * dbusbind.c (syms_of_dbusbind): Use putenv instead of setenv, it
is more portable.

* keyboard.c (gobble_input): Move call of xd_read_queued_messages ...
(kbd_buffer_get_event): ... here. This is needed for cygwin, which
has not defined SIGIO.
2010-09-28 15:39:22 +02:00
Juanma Barranquero
95b6d681b1 Merge changes from emacs-23 branch. 2010-09-28 01:25:27 +02:00
Michael Albinus
08609ffd4c * dbusbind.c (dbus_fd_cb, xd_get_dispatch_status)
(xd_pending_messages): Functions removed.
(xd_read_queued_messages): Add parameters fd, *data, for_read in
order to be compatible with add_read_fd.  Determine bus from data,
and call xd_read_message just for this bus.
(xd_add_watch): Use xd_read_queued_messages as callback function.
Add data.

* lisp.h (xd_pending_messages, xd_read_queued_messages): Remove.
2010-09-27 17:34:04 +02:00
Michael Albinus
789af3cd80 * dbusbind.c (syms_of_dbusbind): Set $DBUS_FATAL_WARNINGS to "0".
(Bug#7113)
2010-09-27 15:27:54 +02:00
Michael Albinus
11a5af7c3f * dbusbind.c (syms_of_dbusbind): Set $DBUS_FATAL_WARNINGS to "0".
(Bug#7113)
2010-09-27 14:44:26 +02:00
Michael Albinus
e0720500f6 * dbusbind.c (syms_of_dbusbind): Unset $DBUS_FATAL_WARNINGS.
(Bug#7113)
2010-09-27 10:59:16 +02:00
Jan D
3fad2ad22e Add fd handling with callbacks to select, dbus needs it for async operation.
* src/dbusbind.c: Include process.h.
(dbus_fd_cb, xd_find_watch_fd, xd_toggle_watch)
(xd_read_message_1): New functions.
(xd_add_watch, xd_remove_watch): Call xd_find_watch_fd.  Handle
watch for both read and write.
(Fdbus_init_bus): Also register xd_toggle_watch.
(Fdbus_call_method_asynchronously, Fdbus_method_return_internal)
(Fdbus_method_error_internal, Fdbus_send_signal): Remove call
to dbus_connection_flush.
(xd_read_message):  Move most of the code to xd_read_message_1.
Call xd_read_message_1 until status is COMPLETE.

* src/keyboard.c (readable_events, gobble_input): Remove DBUS code.

* src/process.c (gpm_wait_mask, max_gpm_desc): Remove.
(write_mask): New variable.
(max_input_desc): Renamed from max_keyboard_desc.
(fd_callback_info): New variable.
(add_read_fd, delete_read_fd, add_write_fd, delete_write_fd): New
functions.
(Fmake_network_process): FD_SET write_mask.
(deactivate_process): FD_CLR write_mask.
(wait_reading_process_output): Connecting renamed to Writeok.
check_connect removed.  check_write is new.  Remove references to
gpm.  Use Writeok/check_write unconditionally (i.e. no #ifdef
NON_BLOCKING_CONNECT) instead of Connecting.
Loop over file descriptors and call callbacks in fd_callback_info
if file descriptor is ready for I/O.
(add_gpm_wait_descriptor): Just call add_keyboard_wait_descriptor.
(delete_gpm_wait_descriptor): Just call delete_keyboard_wait_descriptor.
(keyboard_bit_set): Use max_input_desc.
(add_keyboard_wait_descriptor, delete_keyboard_wait_descriptor): Remove
#ifdef subprocesses. Use max_input_desc.
(init_process): Initialize write_mask and fd_callback_info.

* src/process.h (add_read_fd, delete_read_fd, add_write_fd)
(delete_write_fd): Declare.
2010-09-26 18:20:01 +02:00
Michael Albinus
0c37265543 * dbusbind.c: Accept UNIX domain sockets as bus address.
(Fdbus_close_bus): New function.
(Vdbus_registered_buses): New variable.
(xd_initialize): Implement string as bus address.
(Fdbus_init_bus): Add bus to Vdbus_registered_buses).
(Fdbus_get_unique_name, Fdbus_call_method)
(Fdbus_call_method_asynchronously, Fdbus_method_return_internal)
(Fdbus_method_error_internal, Fdbus_send_signal)
(Fdbus_register_signal, Fdbus_register_method): Remove bus type
check.  This is done in xd_initialize_bus.  Adapt doc string, if
necessary.
(xd_pending_messages, xd_read_queued_messages): Loop over buses in
Vdbus_registered_buses.
(Vdbus_registered_objects_table): Create hash.
2010-08-23 15:02:00 +02:00
Andreas Schwab
de06a2dd4d * dbusbind.c (xd_initialize): Don't compare boolean with a constant. 2010-07-12 21:03:53 +02:00
Michael Albinus
2536a4b7d8 * dbusbind.c (xd_initialize): Add new argument RAISE_ERROR, which
allows to suppress errors when polling in Emacs' main loop.
(Fdbus_init_bus, Fdbus_get_unique_name, Fdbus_call_method)
(Fdbus_call_method_asynchronously, Fdbus_method_return_internal)
(Fdbus_method_error_internal, Fdbus_send_signal)
(xd_get_dispatch_status, xd_read_message, Fdbus_register_signal)
(Fdbus_register_method): Use it.  (Bug#6579)
2010-07-09 11:05:47 +02:00
Dan Nicolaescu
5842a27bbf Convert DEFUNs to standard C.
* src/alloc.c: Convert DEFUNs to standard C.
* src/buffer.c:
* src/bytecode.c:
* src/callint.c:
* src/callproc.c:
* src/casefiddle.c:
* src/casetab.c:
* src/category.c:
* src/character.c:
* src/charset.c:
* src/chartab.c:
* src/cmds.c:
* src/coding.c:
* src/composite.c:
* src/data.c:
* src/dbusbind.c:
* src/dired.c:
* src/dispnew.c:
* src/doc.c:
* src/dosfns.c:
* src/editfns.c:
* src/emacs.c:
* src/eval.c:
* src/fileio.c:
* src/filelock.c:
* src/floatfns.c:
* src/fns.c:
* src/font.c:
* src/fontset.c:
* src/frame.c:
* src/fringe.c:
* src/image.c:
* src/indent.c:
* src/insdel.c:
* src/keyboard.c:
* src/keymap.c:
* src/lread.c:
* src/macros.c:
* src/marker.c:
* src/menu.c:
* src/minibuf.c:
* src/msdos.c:
* src/nsfns.m:
* src/nsmenu.m:
* src/nsselect.m:
* src/print.c:
* src/process.c:
* src/search.c:
* src/sound.c:
* src/syntax.c:
* src/term.c:
* src/terminal.c:
* src/textprop.c:
* src/undo.c:
* src/w16select.c:
* src/w32console.c:
* src/w32fns.c:
* src/w32font.c:
* src/w32menu.c:
* src/w32proc.c:
* src/w32select.c:
* src/window.c:
* src/xdisp.c:
* src/xfaces.c:
* src/xfns.c:
* src/xmenu.c:
* src/xselect.c:
* src/xsettings.c:
* src/xsmfns.c: Likewise.
2010-07-08 14:25:08 -07:00
Dan Nicolaescu
971de7fb15 Convert (most) functions in src to standard C.
* src/alloc.c: Convert function definitions to standard C.
* src/atimer.c:
* src/bidi.c:
* src/bytecode.c:
* src/callint.c:
* src/callproc.c:
* src/casefiddle.c:
* src/casetab.c:
* src/category.c:
* src/ccl.c:
* src/character.c:
* src/charset.c:
* src/chartab.c:
* src/cmds.c:
* src/coding.c:
* src/composite.c:
* src/data.c:
* src/dbusbind.c:
* src/dired.c:
* src/dispnew.c:
* src/doc.c:
* src/doprnt.c:
* src/ecrt0.c:
* src/editfns.c:
* src/fileio.c:
* src/filelock.c:
* src/filemode.c:
* src/fns.c:
* src/font.c:
* src/fontset.c:
* src/frame.c:
* src/fringe.c:
* src/ftfont.c:
* src/ftxfont.c:
* src/gtkutil.c:
* src/indent.c:
* src/insdel.c:
* src/intervals.c:
* src/keymap.c:
* src/lread.c:
* src/macros.c:
* src/marker.c:
* src/md5.c:
* src/menu.c:
* src/minibuf.c:
* src/prefix-args.c:
* src/print.c:
* src/ralloc.c:
* src/regex.c:
* src/region-cache.c:
* src/scroll.c:
* src/search.c:
* src/sound.c:
* src/strftime.c:
* src/syntax.c:
* src/sysdep.c:
* src/termcap.c:
* src/terminal.c:
* src/terminfo.c:
* src/textprop.c:
* src/tparam.c:
* src/undo.c:
* src/unexelf.c:
* src/window.c:
* src/xfaces.c:
* src/xfns.c:
* src/xfont.c:
* src/xftfont.c:
* src/xgselect.c:
* src/xmenu.c:
* src/xrdb.c:
* src/xselect.c:
* src/xsettings.c:
* src/xsmfns.c:
* src/xterm.c: Likewise.
2010-07-04 00:50:25 -07:00
Andreas Schwab
639b2760f1 Merge from emacs-23 2010-06-10 00:08:50 +02:00
Stefan Monnier
e454a4a330 * dbusbind.c (xd_append_arg): Don't "make-unibyte" the string.
Check `object's type before accessing its guts.
2010-06-09 10:31:12 -04:00
Dan Nicolaescu
08a494a3b0 Fix config.h includes.
* src/xsettings.c:
* src/xgselect.c:
* src/nsterm.m:
* src/nsselect.m:
* src/nsimage.m:
* src/nsfont.m:
* src/nsfns.m:
* src/dbusbind.c: Use #include <config.h> instead of "config.h" as all
other files do.
2010-06-01 21:29:53 -07:00
Glenn Morris
114f9c9679 Add 2010 to copyright years. 2010-01-13 00:35:10 -08:00
Stefan Monnier
e3eb1dae0d (xd_remove_watch): Avoid trying to convert a void* to
Lisp_Object, preferring to convert a lisp_Object to a void* instead.
(Fdbus_init_bus): Use XHASH to get a scalar value from a Lisp_Object.
2010-01-04 12:38:20 -05:00
Michael Albinus
777013f2bf * dbusbind.c (xd_add_watch): Improve debug message.
(xd_remove_watch): Improve debug message.  If DATA is the session
bus, unset D-Bus session environment.
(Fdbus_init_bus): Pass the bus as argument to
dbus_connection_set_watch_functions.  (Bug#5283)
2010-01-03 20:27:17 +01:00
Michael Albinus
fa8e045a8a * dbusbind.c (xd_retrieve_arg): Reorder declarations in order to
avoid compiler warnings.  (Bug #5217).
2009-12-15 05:59:39 +00:00
Michael Albinus
f04bb9b2d8 * dbusbind.c (Vdbus_registered_objects_table): Renamed from
Vdbus_registered_functions_table, because it contains also
properties.  Fix docstring.
(Fdbus_call_method, Fdbus_call_method_asynchronously): Fix
docstring.
2009-11-13 16:12:08 +00:00
Dan Nicolaescu
d67b4f80db * xterm.c (syms_of_xterm):
* xselect.c (syms_of_xselect):
* xmenu.c (syms_of_xmenu):
* xfns.c (syms_of_xfns):
* xfaces.c (syms_of_xfaces):
* xdisp.c (syms_of_xdisp):
* window.c (syms_of_window):
* w32fns.c (syms_of_w32fns):
* undo.c (syms_of_undo):
* textprop.c (syms_of_textprop):
* terminal.c (syms_of_terminal):
* syntax.c (syms_of_syntax):
* sound.c (syms_of_sound):
* search.c (syms_of_search):
* print.c (syms_of_print):
* minibuf.c (syms_of_minibuf):
* macros.c (syms_of_macros):
* keymap.c (syms_of_keymap, initial_define_key)
(initial_define_lispy_key):
* keyboard.c (syms_of_keyboard):
* insdel.c (syms_of_insdel):
* image.c (syms_of_image):
* fringe.c (syms_of_fringe):
* frame.c (syms_of_frame):
* fontset.c (syms_of_fontset):
* fns.c (syms_of_fns):
* fns.c (syms_of_fns):
* fileio.c (syms_of_fileio):
* fileio.c (syms_of_fileio):
* eval.c (syms_of_eval):
* doc.c (syms_of_doc):
* dispnew.c (syms_of_display):
* dired.c (syms_of_dired):
* dbusbind.c (syms_of_dbusbind):
* data.c (syms_of_data):
* composite.c (syms_of_composite):
* coding.c (syms_of_coding):
* cmds.c (syms_of_cmds):
* charset.c (define_charset_internal, syms_of_character):
* ccl.c (syms_of_ccl):
* category.c (syms_of_category, init_category_once):
* casetab.c (syms_of_casetab):
* casefiddle.c (syms_of_casefiddle):
* callint.c (syms_of_callint):
* bytecode.c (syms_of_bytecode):
* buffer.c (keys_of_buffer, syms_of_buffer):
* alloc.c (syms_of_alloc):
* process.c (syms_of_process, init_process):
* lread.c (syms_of_lread, init_obarray):
* font.c (build_style_table):
* emacs.c (syms_of_emacs, main): Replace calls to intern with
intern_c_string, calls to make_pure_string with
make_pure_c_string.  Use pure_cons instead of Fcons.

* process.c (socket_options): Make it const.
(set_socket_option, init_process): Use a const pointer.

* lread.c (intern_c_string): New function.
(defvar_kboard, defvar_lisp, defvar_lisp_nopro, defvar_bool)
(defvar_int): Uset it.  Make the name const char*.

* font.c (struct table_entry): Remove unused member.  Make NAMES
constant.
(weight_table, slant_table, width_table): Make constant.

* emacs.c (struct standard_args): Make name and longname constant.
2009-11-06 06:50:52 +00:00
Andreas Schwab
1cae01f715 (xd_retrieve_arg): Handle DBUS_TYPE_INTnn and
DBUS_TYPE_UINTnn separately to get proper sign extension.
2009-10-24 16:45:25 +00:00
Dan Nicolaescu
d7306fe6b1 * alloc.c: Do not define struct catchtag.
* eval.c: Move struct catchtag definition ...
* lisp.h: ... here.

* image.c: Move png.h #include earlier to avoid warnings.

* xterm.c:
* xsmfns.c:
* xselect.c:
* xrdb.c:
* xmenu.c:
* xftfont.c:
* xfont.c:
* xfns.c:
* xfaces.c:
* xdisp.c:
* window.c:
* widget.c:
* w32xfns.c:
* w32uniscribe.c:
* w32term.c:
* w32select.c:
* w32reg.c:
* w32proc.c:
* w32menu.c:
* w32inevt.c:
* w32heap.c:
* w32font.c:
* w32fns.c:
* w32console.c:
* w32.c:
* w16select.c:
* vm-limit.c:
* unexsol.c:
* unexec.c:
* unexcw.c:
* unexaix.c:
* undo.c:
* tparam.c:
* textprop.c:
* terminfo.c:
* terminal.c:
* termcap.c:
* term.c:
* syntax.c:
* sound.c:
* sheap.c:
* search.c:
* scroll.c:
* region-cache.c:
* regex.c:
* ralloc.c:
* process.c:
* print.c:
* msdos.c:
* minibuf.c:
* menu.c:
* marker.c:
* macros.c:
* keymap.c:
* keyboard.c:
* intervals.c:
* insdel.c:
* indent.c:
* gtkutil.c:
* ftxfont.c:
* ftfont.c:
* fringe.c:
* frame.c:
* fontset.c:
* font.c:
* fns.c:
* floatfns.c:
* filelock.c:
* fileio.c:
* emacs.c:
* editfns.c:
* dosfns.c:
* doprnt.c:
* doc.c:
* dispnew.c:
* dired.c:
* dbusbind.c:
* data.c:
* composite.c:
* coding.c:
* cmds.c:
* cm.c:
* chartab.c:
* charset.c:
* character.c:
* ccl.c:
* category.c:
* casetab.c:
* casefiddle.c:
* callproc.c:
* callint.c:
* bytecode.c:
* buffer.c:
* atimer.c: Include setjmp.h.  (Bug#4643)

* xlwmenu.c:
* lwlib.c:
* lwlib-utils.c:
* lwlib-Xm.c:
* lwlib-Xlw.c:
* lwlib-Xaw.c: Include setjmp.h.
2009-10-19 04:27:09 +00:00
Adrian Robert
603f0bf0d9 (dbus-method-return-internal, dbus-method-error-internal): Use long format in printf, and cast argument. 2009-10-13 01:03:29 +00:00
Michael Albinus
1574224c89 * dbusbind.c (Fdbus_call_method)
(Fdbus_call_method_asynchronously): Use English numeric format for
timeout values in doc string.
2009-08-25 10:31:38 +00:00
Michael Albinus
eb4c6ace23 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): Remove. It was
intended as hotfix only.
(xd_add_watch, xd_remove_watch): Use HAVE_DBUS_WATCH_GET_UNIX_FD.
2009-08-22 08:57:34 +00:00
Michael Albinus
3f56d3c665 * dbusbind.c (XD_WITH_DBUS_WATCH_GET_UNIX_FD): New macro.
(xd_add_watch, xd_remove_watch): Use it.  Print debug messages.
(xd_initialize, xd_pending_messages): Check, whether
$DBUS_SESSION_BUS_ADDRESS is set.
2009-08-20 12:54:57 +00:00
Michael Albinus
058ed8610c * dbusbind.c (xd_add_watch, xd_remove_watch, Fdbus_init_bus): New
functions.
(xd_initialize): Revert change from 2009-08-16.
2009-08-18 15:17:02 +00:00
Ken Raeburn
f601cdf35d * lisp.h (XFLOAT_DATA): Produce an rvalue by adding 0 to the value.
(XFLOAT_INIT): New macro for storing a float value.
* alloc.c (make_float, make_pure_float): Use XFLOAT_INIT.
* fns.c (sxhash): Copy out the value of a float in order to examine its bytes.
* dbusbind.c (xd_append_arg): Likewise.
2009-08-17 01:25:54 +00:00
Michael Albinus
ca4f31ea15 * dbusbind.c (Fdbus_call_method_asynchronously): Allow nil HANDLER. 2009-08-16 17:35:44 +00:00
Michael Albinus
a0645cddf0 * dbusbind.c (xd_initialize): Add connection file descriptor to
input_wait_mask, in order to let select() detect, whether a new
message has been arrived.
2009-08-16 12:23:23 +00:00
Michael Albinus
f573d5886c * dbusbind.c (xd_get_dispatch_status, xd_pending_messages): New functions. 2009-08-15 18:27:58 +00:00
Michael Albinus
c1d5ce9488 * dbusbind.c (xd_initialize, Fdbus_call_method, xd_read_message)
(Fdbus_register_signal, Fdbus_register_method): Cleanup memory of
error flag.
2009-07-08 12:59:47 +00:00
Michael Albinus
78c383195c * dbusbind.c (XD_SYMBOL_TO_DBUS_TYPE): Convert macro into function
xd_symbol_to_dbus_type.  With Solaris 2.11, it was said to compile
for hours, when optimzation is enabled.
(xd_signature, xd_append_arg, xd_retrieve_arg, xd_initialize)
(xd_read_message): Make them static.
2009-06-28 15:22:37 +00:00
Juanma Barranquero
fff4e45990 * dbusbind.c (Fdbus_register_signal):
* process.c (conv_sockaddr_to_lisp):
* w32fns.c (Fw32_battery_status): Use empty_unibyte_string.
2009-01-18 03:58:09 +00:00
Glenn Morris
76b6f70759 Add 2009 to copyright years. 2009-01-08 03:15:17 +00:00
Michael Albinus
1dae919792 * dbusbind.c (xd_in_read_queued_messages): New variable.
(XD_SIGNAL1, XD_SIGNAL2, XD_SIGNAL3): New macros.  Throw
Qdbus_error.
(xd_read_queued_messages): Catch Qdbus_error from the macros.
(all): Replace xsignal1, xsignal2, xsignal3 by the respective
macro.  (Bug#1186).
2008-10-24 04:21:15 +00:00