All,
svn@trunk compiled in Linux x86_64 with libc-iconv, segfaults when executed
with an argument. I don't understand libsvn_subr/utf.c code well enough.
Here I'm attaching gdb traceback for "svn --version".
Env details :
$ uname -a
Linux localhost 2.6.9-42.ELsmp #1 SMP Wed Jul 12 23:32:02 EDT 2006
x86_64 x86_64 x86_64 GNU/Linux
* subversion trunk@1452694
* glibc-2.3.4
* apr-1.4.6
* apr-util-1.5.1
Thanks
-Alexander Thomas (AT)
GNU gdb Red Hat Linux (6.3.0.0-1.132.EL4rh)
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu"...Using host libthread_db library "/lib64/tls/libthread_db.so.1".
(gdb) r --version
Starting program: /tmp/svn/bin/svn --version
[Thread debugging using libthread_db enabled]
[New Thread 182925287104 (LWP 28269)]
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 182925287104 (LWP 28269)]
0x0000000000000000 in ?? ()
(gdb) bt
#0 0x0000000000000000 in ?? ()
#1 0x0000003f0d11d478 in __gconv () from /lib64/tls/libc.so.6
#2 0x0000003f0d11cadb in iconv () from /lib64/tls/libc.so.6
#3 0x0000002a96ec611e in apr_xlate_conv_buffer (convset=0x53f0d8, inbuf=Variable "inbuf" is not available.
) at xlate/xlate.c:343
#4 0x0000002a96c5ce7f in convert_to_stringbuf (node=0x549288,
src_data=0x7fbffffeec "/home/alexander", src_length=15, dest=0x7fbffff350, pool=0x549288)
at subversion/libsvn_subr/utf.c:564
#5 0x0000002a96c5d496 in convert_cstring (dest=0x7fbffff3b0, src=0x7fbffffeec "/home/alexander",
node=0x549288, pool=0x549288) at subversion/libsvn_subr/utf.c:802
#6 0x0000002a96c5d565 in svn_utf_cstring_to_utf8 (dest=0x7fbffff3b0,
src=0x7fbffffeec "/home/alexander", pool=0x549288) at subversion/libsvn_subr/utf.c:825
#7 0x0000002a96c5c007 in utf8_or_nothing (str=Variable "str" is not available.
) at subversion/libsvn_subr/user.c:56
#8 0x0000002a96c5c0ad in svn_user_get_homedir (pool=0x549288) at subversion/libsvn_subr/user.c:83
#9 0x0000002a96bd18c0 in svn_config_get_user_config_path (path=0x7fbffff408, config_dir=Variable "config_dir" is not available.
)
at subversion/libsvn_subr/config_file.c:1249
#10 0x0000002a96bcee40 in get_category_config (cfg=0x7fbffff448, config_dir=0x0,
category=0x2a96c5fdf9 "config", pool=0x549288) at subversion/libsvn_subr/config.c:269
#11 0x0000002a96bcef99 in svn_config_get_config (cfg_hash=0x7fbffff518, config_dir=0x0, pool=0x549288)
at subversion/libsvn_subr/config.c:292
#12 0x000000000041a8d9 in main (argc=Variable "argc" is not available.
) at subversion/svn/svn.c:2458
(gdb) bt full
#0 0x0000000000000000 in ?? ()
No symbol table info available.
#1 0x0000003f0d11d478 in __gconv () from /lib64/tls/libc.so.6
No symbol table info available.
#2 0x0000003f0d11cadb in iconv () from /lib64/tls/libc.so.6
No symbol table info available.
#3 0x0000002a96ec611e in apr_xlate_conv_buffer (convset=0x53f0d8, inbuf=Variable "inbuf" is not available.
) at xlate/xlate.c:343
inbufptr = 0x7fbffffeec "/home/alexander"
outbufptr = 0x54a118 ""
translated = Variable "translated" is not available.
(gdb) q
The program is running. Exit anyway? (y or n)