On Thu, Oct 07, 2010 at 09:43:23PM +0200, [email protected] wrote:
> Thank you for testing, good feedback is even better than bugreports. :)
>
>
> - comment @@; and expand @@; are optional, set it to OPTIONAL.
> - added dummy support for commitid ...;, reported by Joerg Sonnenberger for
> OpenCVS and it was in for OpenRCS already.
> - rewrote switch() into more readable if() statement.
> - plugged a memory leak
> - adjusted some comments
>
> And best part:
>
> - generalized rcsparse enough to get it into OpenRCS and OpenCVS with only
> two lines diff (cvs_vlog instead of vwarnx and its include)!
>
>
> Our trees (ports, src, www, xenocara) work fine as of today, 10:00 o'clock.
>
> I don't want to put these two diffs (57K/~2500 lines each) in this mail,
> please download here:
>
> http://www.stoeckmann.org/opencvs-rcsparse.diff
It works well for me too.
Previously, with the one in current, I used to get similar crashes:
#0 0x000000020f888bca in strlen () from /usr/lib/libc.so.57.0
(gdb) bt
#0 0x000000020f888bca in strlen () from /usr/lib/libc.so.57.0
#1 0x000000000042a0eb in xstrdup (str=0x0) at
/usr/src/usr.bin/cvs/xmalloc.c:87
#2 0x000000000041cff1 in rcs_kwexp_line (
rcsfile=0x201257500
"/home/OpenBSD_cvsync/src/gnu/usr.bin/cvs/doc/cvs.ps,v",
rdp=0x20ec48900, lines=0x206df3ca0, line=0x20c0c7740, mode=Variable
"mode" is not available.
)
at /usr/src/usr.bin/cvs/rcs.c:3379
#3 0x0000000000420012 in rcs_rev_write_fd (rfp=0x20afe3500,
rev=Variable "rev" is not available.
)
at /usr/src/usr.bin/cvs/rcs.c:3116
#4 0x0000000000407c48 in cvs_checkout_file (cf=0x203f7f280,
rnum=0x20f293f00,
tag=0x0, co_flags=0) at /usr/src/usr.bin/cvs/checkout.c:514
#5 0x0000000000428cfa in cvs_update_local (cf=0x203f7f280)
at /usr/src/usr.bin/cvs/update.c:448
#6 0x0000000000416beb in cvs_file_walklist (fl=Variable "fl" is not
available.
)
at /usr/src/usr.bin/cvs/file.c:371
#7 0x0000000000416562 in cvs_file_walkdir (cf=0x203f7f780,
cr=0x7f7ffffcfa20)
at /usr/src/usr.bin/cvs/file.c:606
#8 0x0000000000416eb1 in cvs_file_walklist (fl=Variable "fl" is not
available.
)
at /usr/src/usr.bin/cvs/file.c:350
#9 0x00000000004165a3 in cvs_file_walkdir (cf=0x203f7f580,
cr=0x7f7ffffcfa20)
at /usr/src/usr.bin/cvs/file.c:619
#10 0x0000000000416eb1 in cvs_file_walklist (fl=Variable "fl" is not
available.
)
at /usr/src/usr.bin/cvs/file.c:350
#11 0x00000000004165a3 in cvs_file_walkdir (cf=0x203f7f100,
cr=0x7f7ffffcfa20)
at /usr/src/usr.bin/cvs/file.c:619
#12 0x0000000000416eb1 in cvs_file_walklist (fl=Variable "fl" is not
available.
)
at /usr/src/usr.bin/cvs/file.c:350
#13 0x00000000004165a3 in cvs_file_walkdir (cf=0x203f7f180,
cr=0x7f7ffffcfa20)
at /usr/src/usr.bin/cvs/file.c:619
#14 0x0000000000416eb1 in cvs_file_walklist (fl=Variable "fl" is not
available.
)
at /usr/src/usr.bin/cvs/file.c:350
#15 0x00000000004165a3 in cvs_file_walkdir (cf=0x203f7f300,
cr=0x7f7ffffcfa20)
at /usr/src/usr.bin/cvs/file.c:619
#16 0x0000000000416eb1 in cvs_file_walklist (fl=Variable "fl" is not
available.
)
at /usr/src/usr.bin/cvs/file.c:350
#17 0x0000000000417042 in cvs_file_run (argc=1, argv=Variable "argv" is
not available.
)
at /usr/src/usr.bin/cvs/file.c:199
#18 0x0000000000429976 in cvs_update (argc=0, argv=0x7f7ffffd03d8)
at /usr/src/usr.bin/cvs/update.c:178
#19 0x0000000000403890 in main (argc=2, argv=0x7f7ffffd03c8)
at /usr/src/usr.bin/cvs/cvs.c:321
With you patch applied, it's gone. Thanks.
--
Olivier Cherrier - Symacx.com
mailto:[email protected]