[cvsnt] crash in 2.0.58d, ideas about save crashdump feature

Alexey Panchenko alexey-panchenko at hotmail.ru
Wed Dec 8 05:08:38 GMT 2004


Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.


Hello !

1) The crash.

When I add the new directory to the project, copy some files to it and
then execute "cvs add *.*" in that directory _server_ cvs.exe process
crashes.

This crash can be fixed with the following patch:

Index: add.c
===================================================================
RCS file: /usr/local/cvs/cvsnt/src/add.c,v
retrieving revision 1.20.2.43.2.1
diff -u -U5 -r1.20.2.43.2.1 add.c
--- add.c       14 Oct 2004 15:18:47 -0000      1.20.2.43.2.1
+++ add.c       8 Dec 2004 04:50:15 -0000
@@ -139,12 +139,14 @@
 
            /* FIXME: We don't do anything about free'ing argv[i].  But
               the problem is that it is only sometimes allocated (see
               cvsrc.c).  */
 
+           char *tmp = argv[i];
            for (j = i; j < argc - 1; ++j)
                argv[j] = argv[j + 1];
+            argv[argc - 1] = tmp;
            --argc;
            /* Check the new argv[i] again.  */
            --i;
            ++err;
        }
===================================================================


Another way to fix the crash is to make a copy of the
'argument_vector' in function 'static void do_cvs_command (cmd_name,
command)' in file 'server.c' and free memory using copied values.


2) Ideas about save crashdump feature.

I think it should be configurable. Usually cvs is installed on the
server and nobody sees its dialog "Do you want to save crashdump ?".
In the case above the directory in repository remains locked whilst
this dialog is open.

I think there should be the following options:

1) do not save crashdumps at all

2) save brief information about crashdump in text file adding
timestamp to the filename.

3) save full crashdump automatically if there is enough disk space
(greater than some configurable number of Mb) adding timestamp to the
filename.

4) ask the user.

PS. This crash without patch was reported to the
cvsnt-crashdumps at cvsnt.org about a month ago.

-- 
Best regards,
 Alexey                          mailto:alexey-panchenko at hotmail.ru




More information about the cvsnt mailing list
Download the latest CVSNT, TortosieCVS, WinCVS etc. for Windows 8 etc.
@CVSNT on Twitter   CVSNT on Facebook