Fossil SCM

Fix "'syntax error in manifest' when checkin would result in empty worktree" problem, reported by Michai Ramakers on the ML.

jan.nijtmans 2014-07-14 11:35 trunk
Commit 268ecf6ae97ec370fcaadb41dd1a7aeadd691937
1 file changed +13 -14
+13 -14
--- src/manifest.c
+++ src/manifest.c
@@ -901,47 +901,46 @@
901901
if( p->zWikiTitle!=0 ) SYNTAX("L-card in event");
902902
if( p->zWiki==0 ) SYNTAX("missing W-card on event");
903903
if( p->zAttachName ) SYNTAX("A-card in event");
904904
if( !seenZ ) SYNTAX("missing Z-card on event");
905905
p->type = CFTYPE_EVENT;
906
- }else if( hasSelfRefTag || p->nFile>0 || p->zRepoCksum!=0 || p->zBaseline ){
906
+ }else if( p->zWiki!=0 || p->zWikiTitle!=0 ){
907
+ if( p->rDate<=0.0 ) SYNTAX("missing date on wiki");
908
+ if( p->nFile>0 ) SYNTAX("F-card in wiki");
909
+ if( p->zRepoCksum ) SYNTAX("R-card in wiki");
910
+ if( p->zBaseline ) SYNTAX("B-card in wiki");
911
+ if( p->nTag>0 ) SYNTAX("T-card in wiki");
912
+ if( p->zWiki==0 ) SYNTAX("missing W-card on wiki");
913
+ if( p->zWikiTitle==0 ) SYNTAX("missing L-card on wiki");
914
+ if( p->zAttachName ) SYNTAX("A-card in wiki");
915
+ if( !seenZ ) SYNTAX("missing Z-card on wiki");
916
+ p->type = CFTYPE_WIKI;
917
+ }else if( hasSelfRefTag || p->nFile>0 || p->zRepoCksum!=0 || p->zBaseline
918
+ || p->nParent>0){
907919
if( p->rDate<=0.0 ) SYNTAX("missing date on manifest");
908920
if( p->nField>0 ) SYNTAX("J-card in manifest");
909921
if( p->zTicketUuid ) SYNTAX("K-card in manifest");
910
- if( p->zWiki ) SYNTAX("W-card in manifest");
911
- if( p->zWikiTitle ) SYNTAX("L-card in manifest");
912922
if( p->zTicketUuid ) SYNTAX("K-card in manifest");
913923
if( p->zAttachName ) SYNTAX("A-card in manifest");
914924
p->type = CFTYPE_MANIFEST;
915925
}else if( p->nField>0 || p->zTicketUuid!=0 ){
916926
if( p->rDate<=0.0 ) SYNTAX("missing date on ticket");
917
- if( p->zWiki ) SYNTAX("W-card in ticket");
918
- if( p->zWikiTitle ) SYNTAX("L-card in ticket");
919927
if( p->nField==0 ) SYNTAX("missing J-card on ticket");
920928
if( p->nTag>0 ) SYNTAX("T-card in ticket");
921929
if( p->zTicketUuid==0 ) SYNTAX("missing K-card on ticket");
922930
if( p->zUser==0 ) SYNTAX("missing U-card on ticket");
923931
if( p->zAttachName ) SYNTAX("A-card in ticket");
924932
if( p->zMimetype) SYNTAX("N-card in ticket");
925933
if( !seenZ ) SYNTAX("missing Z-card on ticket");
926934
p->type = CFTYPE_TICKET;
927
- }else if( p->zWiki!=0 || p->zWikiTitle!=0 ){
928
- if( p->rDate<=0.0 ) SYNTAX("missing date on wiki");
929
- if( p->nTag>0 ) SYNTAX("T-card in wiki");
930
- if( p->zWiki==0 ) SYNTAX("missing W-card on wiki");
931
- if( p->zWikiTitle==0 ) SYNTAX("missing L-card on wiki");
932
- if( p->zAttachName ) SYNTAX("A-card in wiki");
933
- if( !seenZ ) SYNTAX("missing Z-card on wiki");
934
- p->type = CFTYPE_WIKI;
935935
}else if( p->zAttachName ){
936936
if( p->rDate<=0.0 ) SYNTAX("missing date on attachment");
937937
if( p->nTag>0 ) SYNTAX("T-card in attachment");
938938
if( !seenZ ) SYNTAX("missing Z-card on attachment");
939939
p->type = CFTYPE_ATTACHMENT;
940940
}else{
941941
if( p->rDate<=0.0 ) SYNTAX("missing date on control");
942
- if( p->nParent>0 ) SYNTAX("P-card in control");
943942
if( p->zMimetype ) SYNTAX("N-card in control");
944943
if( !seenZ ) SYNTAX("missing Z-card on control");
945944
p->type = CFTYPE_CONTROL;
946945
}
947946
md5sum_init();
948947
--- src/manifest.c
+++ src/manifest.c
@@ -901,47 +901,46 @@
901 if( p->zWikiTitle!=0 ) SYNTAX("L-card in event");
902 if( p->zWiki==0 ) SYNTAX("missing W-card on event");
903 if( p->zAttachName ) SYNTAX("A-card in event");
904 if( !seenZ ) SYNTAX("missing Z-card on event");
905 p->type = CFTYPE_EVENT;
906 }else if( hasSelfRefTag || p->nFile>0 || p->zRepoCksum!=0 || p->zBaseline ){
 
 
 
 
 
 
 
 
 
 
 
 
907 if( p->rDate<=0.0 ) SYNTAX("missing date on manifest");
908 if( p->nField>0 ) SYNTAX("J-card in manifest");
909 if( p->zTicketUuid ) SYNTAX("K-card in manifest");
910 if( p->zWiki ) SYNTAX("W-card in manifest");
911 if( p->zWikiTitle ) SYNTAX("L-card in manifest");
912 if( p->zTicketUuid ) SYNTAX("K-card in manifest");
913 if( p->zAttachName ) SYNTAX("A-card in manifest");
914 p->type = CFTYPE_MANIFEST;
915 }else if( p->nField>0 || p->zTicketUuid!=0 ){
916 if( p->rDate<=0.0 ) SYNTAX("missing date on ticket");
917 if( p->zWiki ) SYNTAX("W-card in ticket");
918 if( p->zWikiTitle ) SYNTAX("L-card in ticket");
919 if( p->nField==0 ) SYNTAX("missing J-card on ticket");
920 if( p->nTag>0 ) SYNTAX("T-card in ticket");
921 if( p->zTicketUuid==0 ) SYNTAX("missing K-card on ticket");
922 if( p->zUser==0 ) SYNTAX("missing U-card on ticket");
923 if( p->zAttachName ) SYNTAX("A-card in ticket");
924 if( p->zMimetype) SYNTAX("N-card in ticket");
925 if( !seenZ ) SYNTAX("missing Z-card on ticket");
926 p->type = CFTYPE_TICKET;
927 }else if( p->zWiki!=0 || p->zWikiTitle!=0 ){
928 if( p->rDate<=0.0 ) SYNTAX("missing date on wiki");
929 if( p->nTag>0 ) SYNTAX("T-card in wiki");
930 if( p->zWiki==0 ) SYNTAX("missing W-card on wiki");
931 if( p->zWikiTitle==0 ) SYNTAX("missing L-card on wiki");
932 if( p->zAttachName ) SYNTAX("A-card in wiki");
933 if( !seenZ ) SYNTAX("missing Z-card on wiki");
934 p->type = CFTYPE_WIKI;
935 }else if( p->zAttachName ){
936 if( p->rDate<=0.0 ) SYNTAX("missing date on attachment");
937 if( p->nTag>0 ) SYNTAX("T-card in attachment");
938 if( !seenZ ) SYNTAX("missing Z-card on attachment");
939 p->type = CFTYPE_ATTACHMENT;
940 }else{
941 if( p->rDate<=0.0 ) SYNTAX("missing date on control");
942 if( p->nParent>0 ) SYNTAX("P-card in control");
943 if( p->zMimetype ) SYNTAX("N-card in control");
944 if( !seenZ ) SYNTAX("missing Z-card on control");
945 p->type = CFTYPE_CONTROL;
946 }
947 md5sum_init();
948
--- src/manifest.c
+++ src/manifest.c
@@ -901,47 +901,46 @@
901 if( p->zWikiTitle!=0 ) SYNTAX("L-card in event");
902 if( p->zWiki==0 ) SYNTAX("missing W-card on event");
903 if( p->zAttachName ) SYNTAX("A-card in event");
904 if( !seenZ ) SYNTAX("missing Z-card on event");
905 p->type = CFTYPE_EVENT;
906 }else if( p->zWiki!=0 || p->zWikiTitle!=0 ){
907 if( p->rDate<=0.0 ) SYNTAX("missing date on wiki");
908 if( p->nFile>0 ) SYNTAX("F-card in wiki");
909 if( p->zRepoCksum ) SYNTAX("R-card in wiki");
910 if( p->zBaseline ) SYNTAX("B-card in wiki");
911 if( p->nTag>0 ) SYNTAX("T-card in wiki");
912 if( p->zWiki==0 ) SYNTAX("missing W-card on wiki");
913 if( p->zWikiTitle==0 ) SYNTAX("missing L-card on wiki");
914 if( p->zAttachName ) SYNTAX("A-card in wiki");
915 if( !seenZ ) SYNTAX("missing Z-card on wiki");
916 p->type = CFTYPE_WIKI;
917 }else if( hasSelfRefTag || p->nFile>0 || p->zRepoCksum!=0 || p->zBaseline
918 || p->nParent>0){
919 if( p->rDate<=0.0 ) SYNTAX("missing date on manifest");
920 if( p->nField>0 ) SYNTAX("J-card in manifest");
921 if( p->zTicketUuid ) SYNTAX("K-card in manifest");
 
 
922 if( p->zTicketUuid ) SYNTAX("K-card in manifest");
923 if( p->zAttachName ) SYNTAX("A-card in manifest");
924 p->type = CFTYPE_MANIFEST;
925 }else if( p->nField>0 || p->zTicketUuid!=0 ){
926 if( p->rDate<=0.0 ) SYNTAX("missing date on ticket");
 
 
927 if( p->nField==0 ) SYNTAX("missing J-card on ticket");
928 if( p->nTag>0 ) SYNTAX("T-card in ticket");
929 if( p->zTicketUuid==0 ) SYNTAX("missing K-card on ticket");
930 if( p->zUser==0 ) SYNTAX("missing U-card on ticket");
931 if( p->zAttachName ) SYNTAX("A-card in ticket");
932 if( p->zMimetype) SYNTAX("N-card in ticket");
933 if( !seenZ ) SYNTAX("missing Z-card on ticket");
934 p->type = CFTYPE_TICKET;
 
 
 
 
 
 
 
 
935 }else if( p->zAttachName ){
936 if( p->rDate<=0.0 ) SYNTAX("missing date on attachment");
937 if( p->nTag>0 ) SYNTAX("T-card in attachment");
938 if( !seenZ ) SYNTAX("missing Z-card on attachment");
939 p->type = CFTYPE_ATTACHMENT;
940 }else{
941 if( p->rDate<=0.0 ) SYNTAX("missing date on control");
 
942 if( p->zMimetype ) SYNTAX("N-card in control");
943 if( !seenZ ) SYNTAX("missing Z-card on control");
944 p->type = CFTYPE_CONTROL;
945 }
946 md5sum_init();
947

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button