[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: svnlook diff segfaults

From: Ricardo Niederberger Cabral <rnc000_at_gmail.com>
Date: 2004-09-17 03:09:08 CEST

C. Michael Pilato <cmpilato <at> collab.net> writes:

>
> Oliver Brakmann <obrakmann <at> gmx.net> writes:
>
> > Anyway, if someone can point me to some way to find out what the
> > problem actually is, and perhaps how to solve it, I'd greatly
> > appreciate it.
>
> A debugger, perhaps? Or if you post a compressed dumpfile of your
> repository somewhere so someone else can try to reproduce it with your
> data set, that might help.
>

I also host a project at Berlios and I'm having the same problem Oliver has
("svnlook diff" segfaulting). But I managed to get a gdb trace.

The cause seems to be a strange error happening when removing a temporary
directory (on a call to "svn_io_remove_dir").
 
$ gdb svnlook
(gdb) set args diff /svnroot/repos/chalks -r 51
(gdb) r
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 14218)]
0x4006298b in svn_io_remove_dir (path=0x8055fb0 "/tmp/svnlook.57",
pool=0x8055470) at subversion/libsvn_subr/io.c:1112
1112 if ((this_entry.filetype == APR_DIR)
(gdb) bt
#0 0x4006298b in svn_io_remove_dir (path=0x8055fb0 "/tmp/svnlook.57",
pool=0x8055470) at subversion/libsvn_subr/io.c:1112
#1 0x0804b9b2 in do_diff (c=0x80a9f08, pool=0x8055470) at subversion/svnlook/
main.c:1335
#2 0x0804c03f in subcommand_diff (os=0x80554a8, baton=0xbffff4b0,
pool=0x8055470) at subversion/svnlook/main.c:1634
#3 0x0804ca33 in main (argc=134567024, argv=0xbffff544) at subversion/svnlook/
main.c:2049
(gdb) p this_entry
$1 = {pool = 0x80b01e0, valid = 41152880, protection = 1877, filetype
= APR_DIR, user = 23052, group = 23052, inode = 220081,
  device = 8826157793280, nlink = 0, size = 3, csize = 72, atime = 0,
mtime = 6760885729200439296, ctime = 6739410892720694315,
  fname = 0x3e42b <Address 0x3e42b out of bounds>, name = 0x5d873280
"", filehand = 0x3e42b}
(gdb) p this_entry.filetype
$2 = APR_DIR
(gdb) The program is running. Exit anyway? (y or n) y
 

NOTE: I don't subscribe this mailinglist/newsgroup so please CC. any follow-up
to rnc000 at gmail dot com, and I could provide any further debugging info.

Thanks and best regards,

-- 
Ricardo Niederberger Cabral
(rnc000 at gmail dot com)
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org
Received on Fri Sep 17 03:12:11 2004

This is an archived mail posted to the Subversion Users mailing list.