ID: |
7308
|
Fixed in: |
|
Issue Date: |
2018-07-19 14:57 AEST
|
Owner: | CVS Support
|
Last Modified: | 2019-12-31 14:37 AEST | Reporter: | Arthur Barrett
|
Current Est. | 0.0 hours
| % Complete: | 0.0
|
Status: | NEW /
|
Severity: | trivial
|
Affected: | unspecified
|
Description: | improvements for large binary files / gamedev (Gaijin G-CVSNT)
|
Actions:
|
2018-07-19 14:57 AEST by Arthur Barrett - I stumbled across a 'fork' of CVSNT called Gaijin CVSNT or G-CVSNT:
https://github.com/todace/G-CVSNT
However there don't appear to be any actual mods in GitHub related to large files - it's all MacOS X build
stuff. So I think it's originated from some place else originally, but probably not GitHub - maybe sourceforge?
There are two subsequent forks, one was ported to VS2010 and the other seems idle.
As for aourceforge, it's not this one, which comes from GitHub:
https://sourceforge.net/projects/cvsnt-legacy/
I'm not sure where else to search for the original source...
This is a generic bug just to track it. Recommended step 1 would be to diff it to the 'genuine' 2.5.05' release
to find if there are any real improvement here worth porting to 2.8.
There are three 'patches' listed in the root.
1) decrease timeout from 15000 to 1000 (15 seconds to 1 second):
https://github.com/todace/G-CVSNT/blob/master/cvsnt/cvsnt-fixes.patch
2) Disable the advert in the comment:
https://github.com/todace/G-CVSNT/blob/master/cvsnt/cvsnt-nospam.patch
3) fixes for gcc4:
https://github.com/todace/G-CVSNT/blob/master/cvsnt/cvsnt-gcc4.patch |
|
2018-07-19 15:06 AEST by Arthur Barrett - Changes like this one are interesting:
https://github.com/todace/G-CVSNT/blob/master/cvsnt/cvsnt-2.5.05.3744/cvsapi/lib/md5.c#L166
Is it really necessary? Should we run some tests to see what the compiler makes of it?
void cvs_MD5Final (unsigned char digest[16], struct cvs_MD5Context *ctx)
{
.
.
.
memset(ctx, 0, sizeof(*ctx)); /* In case it's sensitive */
}
According to microsoft the answer is NO:
https://msdn.microsoft.com/en-us/library/4s7x1k91.aspx
"When the sizeof operator is applied to an array, it yields the total number of bytes in that array, not the size
of the pointer represented by the array identifier. "
and from the same article:
"When the sizeof operator is applied to a reference, the result is the same as if sizeof had been applied to the
object itself."
|
|
2019-12-31 14:36 AEST by Arthur Barrett - G-CVSNT Gaijin (and Gamedev) CVSNT version new GITHUB location:
https://github.com/GaijinEntertainment/G-CVSNT
The source has been updated to compile a client-only edition with Xcode 7 on OSX 10.11 which makes it 64-
bit (see bug 7397).
So I'm thinking that this version was designed mostly for MacOS, which I hadn't realised previously.
I'm not convinced that any of these patches really meet the description of "modified for large amounts of
binary data (typically for gamedev)". I'm guessing they are just using the -kB option, which is in 'standard'
CVSNT.
|
|