From: Stefan Monnier Date: Mon, 24 May 2010 20:46:41 +0000 (-0400) Subject: * process.c (Fmake_network_process): Set :host to nil if it's not used. X-Git-Tag: emacs-pretest-24.0.90~104^2~275^2~438^2~205^2~1 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=66a9f7f460fa1808e1e897fba35c7aba3d4b2e1d;p=emacs.git * process.c (Fmake_network_process): Set :host to nil if it's not used. Suggested by Masatake YAMATO . --- diff --git a/src/ChangeLog b/src/ChangeLog index a8511a358cd..93f2015b4de 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,8 @@ +2010-05-24 Stefan Monnier + + * process.c (Fmake_network_process): Set :host to nil if it's not used. + Suggested by Masatake YAMATO . + 2010-05-23 Eli Zaretskii * dispextern.h (init_iterator): Sync prototype with changed @@ -15,11 +20,11 @@ * xdisp.c (display_line): Compare IT_CHARPOS with the position in row->start.pos, rather than with MATRIX_ROW_START_CHARPOS. (cursor_row_p): Use row->end.pos rather than MATRIX_ROW_END_CHARPOS. - (try_window_reusing_current_matrix, try_window_id): Use - ROW->minpos rather than ROW->start.pos. + (try_window_reusing_current_matrix, try_window_id): + Use ROW->minpos rather than ROW->start.pos. (init_from_display_pos, init_iterator): Use EMACS_INT for character and byte positions. - (find_row_edges): Renamed from find_row_end. Accept additional + (find_row_edges): Rename from find_row_end. Accept additional arguments for minimum and maximum buffer positions seen by display_line for this row. Don't use iterator to find the position following the maximum one; instead, increment the diff --git a/src/process.c b/src/process.c index a09ac297a2d..acc13ea199b 100644 --- a/src/process.c +++ b/src/process.c @@ -3347,11 +3347,25 @@ usage: (make-network-process &rest ARGS) */) /* :service SERVICE -- string, integer (port number), or t (random port). */ service = Fplist_get (contact, QCservice); + /* :host HOST -- hostname, ip address, or 'local for localhost. */ + host = Fplist_get (contact, QChost); + if (!NILP (host)) + { + if (EQ (host, Qlocal)) + host = build_string ("localhost"); + CHECK_STRING (host); + } + #ifdef HAVE_LOCAL_SOCKETS if (family == AF_LOCAL) { - /* Host is not used. */ - host = Qnil; + if (!NILP (host)) + { + message (":family local ignores the :host \"%s\" property", + SDATA (host)); + contact = Fplist_put (contact, QChost, Qnil); + host = Qnil; + } CHECK_STRING (service); bzero (&address_un, sizeof address_un); address_un.sun_family = AF_LOCAL; @@ -3362,15 +3376,6 @@ usage: (make-network-process &rest ARGS) */) } #endif - /* :host HOST -- hostname, ip address, or 'local for localhost. */ - host = Fplist_get (contact, QChost); - if (!NILP (host)) - { - if (EQ (host, Qlocal)) - host = build_string ("localhost"); - CHECK_STRING (host); - } - /* Slow down polling to every ten seconds. Some kernels have a bug which causes retrying connect to fail after a connect. Polling can interfere with gethostbyname too. */