HEre is a stack trace. I can give you args for whatever function, etc. Just ask.
I posted a hack to unix_canonicalize_host_name() that gets rid of the problem for me in
C unix_canonicalize_host_name, FP=7fff5fbfc3e0
C canonicalize_host_name, FP=7fff5fbfc400
C x_canonicalize_console_connection, FP=7fff5fbfc4a0
C x_canonicalize_device_connection, FP=7fff5fbfc540
C canonicalize_device_connection, FP=7fff5fbfc580
C Ffind_device, FP=7fff5fbfc610
C Fmake_device, FP=7fff5fbfc700
C Ffuncall, FP=7fff5fbfc830
C execute_optimized_program, FP=7fff5fbfcb70
C funcall_compiled_function, FP=7fff5fbfcc70
C Feval, FP=7fff5fbfcf20
C condition_case_1, FP=7fff5fbfd0b0
C condition_case_3, FP=7fff5fbfd130
C execute_rare_opcode, FP=7fff5fbfd230
C execute_optimized_program, FP=7fff5fbfd580
C funcall_compiled_function, FP=7fff5fbfd680
C Feval, FP=7fff5fbfd930
C condition_case_1, FP=7fff5fbfdac0
C top_level_1, FP=7fff5fbfdae0
C internal_catch, FP=7fff5fbfdc10
C initial_command_loop, FP=7fff5fbfdc30
C ...21_5_b29_i386_apple_darwin10_4_0, FP=7fff5fbfdd00
On Jul 24, 2010, at 8:14 AM, Stephen J. Turnbull wrote:
Hamish Macdonald writes:
> However, I wonder why xemacs is trying to resolve this address.
> Local X applications on my system don't appear to do a DNS lookup
> when I use a display name like "/tmp/foo/bar/baz:0", so why does
I dunno. If you've got the time, I would appreciate it if you'd set a
breakpoint on getaddrinfo and tell me what's on the C stack and on the
Lisp stack (use the lbt function defined in .gdbinit) when getaddrinfo
gets called on such a thing. If not, I'll get to it (I have a Mac
with reasonably fresh Apple libraries installed), but probably that
will be Real Soon Now. :-(
> Is it possible that either XEmacs is not using the locally
> installed XLIB library?
No. XEmacs always uses a toolkit; currently supported are Xt and GTK+
v1 (oops, but there you go). I conjecture that XEmacs wants to know
something about the display's network aspect, but I don't have a good
guess as to what.
> Is XEmacs performing its own interpretation of the DISPLAY
> environment variable (that would be a bad idea).
Well, for one thing, the DISPLAY environment variable is not the only
way to specify a display to XEmacs. This can be done with the
-display command line flag as well as `make-frame-on-display'.
Unfortunately, it is REQUIRED for robust operation in the X
environment that a program do its own parsing of such things. X does
*no* sanity checking on arguments in most functions, and it often
leaves the restrictions on arguments undocumented.
 That's why I'm an XEmacs developer, because it was easier to
debug an X crash due to a plausible but illegal argument in XEmacs
than it was to debug the same bug in Emacs.
✇ Lawrence Livermore National Laboratory
Bldg-453 Rm-4024, Mail Stop L-557
7000 East Avenue, Livermore, CA, 94550, USA
☎ (office) (925) 423-9605
☎ (fax) (925) 423-6961
Information Management & Graphics Grp., Services & Development Div., Integrated
Computing & Communications Dept.
(opinions expressed herein are mine and not those of LLNL)
XEmacs-Beta mailing list