Differences From:
File
src/manifest.c
part of check-in
[33c31f73cd]
- Record whether or not files have their execute permission bit set.
Set or clear the execute permission bit upon checkout.
by
drh on
2008-02-21 14:27:34.
Also file
src/manifest.c
part of check-in
[588bb7cd73]
- Merged to ed26056bb5.
by
aku on
2008-02-24 18:50:35.
[view]
To:
File
src/manifest.c
part of check-in
[0afb5e8e39]
- This version is able to clone the entire TCL repository in 12.5 minutes
and to rebuild the cloned TCL repository in 2.5 minutes. There is still
a lot of performance work to be done, but this is good enough for the
time being.
by
drh on
2008-03-08 14:52:56.
[view]
@@ -54,9 +54,8 @@
Blob content; /* The original content blob */
int type; /* Type of file */
int mode; /* Access mode */
char *zComment; /* Decoded comment */
- char zUuid[UUID_SIZE+1]; /* Self UUID */
double rDate; /* Time in the "D" line */
char *zUser; /* Name of the user */
char *zRepoCksum; /* MD5 checksum of the baseline content */
char *zWiki; /* Text of the wiki page */
@@ -144,16 +143,12 @@
int seenHeader = 0;
int seenZ = 0;
int i, lineNo=0;
Blob line, token, a1, a2, a3;
- Blob selfuuid;
char cPrevType = 0;
memset(p, 0, sizeof(*p));
memcpy(&p->content, pContent, sizeof(p->content));
- sha1sum_blob(&p->content, &selfuuid);
- memcpy(p->zUuid, blob_buffer(&selfuuid), UUID_SIZE);
- p->zUuid[UUID_SIZE] = 0;
blob_zero(pContent);
pContent = &p->content;
blob_zero(&a1);
@@ -487,9 +482,9 @@
}
if( blob_size(&a2)==UUID_SIZE && validate16(zUuid, UUID_SIZE) ){
/* A valid uuid */
}else if( blob_size(&a2)==1 && zUuid[0]=='*' ){
- zUuid = p->zUuid;
+ zUuid = 0;
}else{
goto manifest_syntax_error;
}
defossilize(zName);
@@ -824,9 +819,13 @@
if( m.type==CFTYPE_CONTROL || m.type==CFTYPE_MANIFEST ){
for(i=0; i<m.nTag; i++){
int tid;
int type;
- tid = uuid_to_rid(m.aTag[i].zUuid, 1);
+ if( m.aTag[i].zUuid ){
+ tid = uuid_to_rid(m.aTag[i].zUuid, 1);
+ }else{
+ tid = rid;
+ }
switch( m.aTag[i].zName[0] ){
case '+': type = 1; break;
case '*': type = 2; break;
case '-': type = 0; break;