Fossil SCM
Fix the display of arrows with a private branch as starting point. If UUID's are missing from R-cards (except for the first argument) and Q-cards, this is not fatal: The merge source might be private in some other repository and not (yet) synced. "fossil test-missing" should not report errors for this situation.
Commit
60389c1f4122da8aa2ce4d60d658528d3ba2a72d
Parent
d5649979ed10dd7…
2 files changed
+1
-1
+2
-8
+1
-1
| --- src/checkin.c | ||
| +++ src/checkin.c | ||
| @@ -1017,11 +1017,11 @@ | ||
| 1017 | 1017 | free(zParentUuid); |
| 1018 | 1018 | db_prepare(&q, "SELECT merge FROM vmerge WHERE id=0 OR id<-2"); |
| 1019 | 1019 | while( db_step(&q)==SQLITE_ROW ){ |
| 1020 | 1020 | char *zMergeUuid; |
| 1021 | 1021 | int mid = db_column_int(&q, 0); |
| 1022 | - if( (!g.markPrivate && content_is_private(mid)) || (mid == vid) ) continue; | |
| 1022 | + if( mid == vid ) continue; | |
| 1023 | 1023 | zMergeUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", mid); |
| 1024 | 1024 | if( zMergeUuid ){ |
| 1025 | 1025 | blob_appendf(pOut, " %s", zMergeUuid); |
| 1026 | 1026 | if( p->verifyDate ) checkin_verify_younger(mid, zMergeUuid, zDate); |
| 1027 | 1027 | free(zMergeUuid); |
| 1028 | 1028 |
| --- src/checkin.c | |
| +++ src/checkin.c | |
| @@ -1017,11 +1017,11 @@ | |
| 1017 | free(zParentUuid); |
| 1018 | db_prepare(&q, "SELECT merge FROM vmerge WHERE id=0 OR id<-2"); |
| 1019 | while( db_step(&q)==SQLITE_ROW ){ |
| 1020 | char *zMergeUuid; |
| 1021 | int mid = db_column_int(&q, 0); |
| 1022 | if( (!g.markPrivate && content_is_private(mid)) || (mid == vid) ) continue; |
| 1023 | zMergeUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", mid); |
| 1024 | if( zMergeUuid ){ |
| 1025 | blob_appendf(pOut, " %s", zMergeUuid); |
| 1026 | if( p->verifyDate ) checkin_verify_younger(mid, zMergeUuid, zDate); |
| 1027 | free(zMergeUuid); |
| 1028 |
| --- src/checkin.c | |
| +++ src/checkin.c | |
| @@ -1017,11 +1017,11 @@ | |
| 1017 | free(zParentUuid); |
| 1018 | db_prepare(&q, "SELECT merge FROM vmerge WHERE id=0 OR id<-2"); |
| 1019 | while( db_step(&q)==SQLITE_ROW ){ |
| 1020 | char *zMergeUuid; |
| 1021 | int mid = db_column_int(&q, 0); |
| 1022 | if( mid == vid ) continue; |
| 1023 | zMergeUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", mid); |
| 1024 | if( zMergeUuid ){ |
| 1025 | blob_appendf(pOut, " %s", zMergeUuid); |
| 1026 | if( p->verifyDate ) checkin_verify_younger(mid, zMergeUuid, zDate); |
| 1027 | free(zMergeUuid); |
| 1028 |
+2
-8
| --- src/content.c | ||
| +++ src/content.c | ||
| @@ -1100,18 +1100,12 @@ | ||
| 1100 | 1100 | nErr += check_exists(p->zAttachSrc, flags, p, "file of", 0); |
| 1101 | 1101 | for(i=0; i<p->nFile; i++){ |
| 1102 | 1102 | nErr += check_exists(p->aFile[i].zUuid, flags, p, "file of", |
| 1103 | 1103 | p->aFile[i].zName); |
| 1104 | 1104 | } |
| 1105 | - for(i=0; i<p->nParent; i++){ | |
| 1106 | - nErr += check_exists(p->azParent[i], flags, p, "parent of", 0); | |
| 1107 | - } | |
| 1108 | - for(i=0; i<p->nCherrypick; i++){ | |
| 1109 | - nErr += check_exists(p->aCherrypick[i].zCPTarget+1, flags, p, | |
| 1110 | - "cherry-pick target of", 0); | |
| 1111 | - nErr += check_exists(p->aCherrypick[i].zCPBase, flags, p, | |
| 1112 | - "cherry-pick baseline of", 0); | |
| 1105 | + if( p->nParent>0 ){ | |
| 1106 | + nErr += check_exists(p->azParent[0], flags, p, "parent of", 0); | |
| 1113 | 1107 | } |
| 1114 | 1108 | for(i=0; i<p->nCChild; i++){ |
| 1115 | 1109 | nErr += check_exists(p->azCChild[i], flags, p, "in", 0); |
| 1116 | 1110 | } |
| 1117 | 1111 | for(i=0; i<p->nTag; i++){ |
| 1118 | 1112 |
| --- src/content.c | |
| +++ src/content.c | |
| @@ -1100,18 +1100,12 @@ | |
| 1100 | nErr += check_exists(p->zAttachSrc, flags, p, "file of", 0); |
| 1101 | for(i=0; i<p->nFile; i++){ |
| 1102 | nErr += check_exists(p->aFile[i].zUuid, flags, p, "file of", |
| 1103 | p->aFile[i].zName); |
| 1104 | } |
| 1105 | for(i=0; i<p->nParent; i++){ |
| 1106 | nErr += check_exists(p->azParent[i], flags, p, "parent of", 0); |
| 1107 | } |
| 1108 | for(i=0; i<p->nCherrypick; i++){ |
| 1109 | nErr += check_exists(p->aCherrypick[i].zCPTarget+1, flags, p, |
| 1110 | "cherry-pick target of", 0); |
| 1111 | nErr += check_exists(p->aCherrypick[i].zCPBase, flags, p, |
| 1112 | "cherry-pick baseline of", 0); |
| 1113 | } |
| 1114 | for(i=0; i<p->nCChild; i++){ |
| 1115 | nErr += check_exists(p->azCChild[i], flags, p, "in", 0); |
| 1116 | } |
| 1117 | for(i=0; i<p->nTag; i++){ |
| 1118 |
| --- src/content.c | |
| +++ src/content.c | |
| @@ -1100,18 +1100,12 @@ | |
| 1100 | nErr += check_exists(p->zAttachSrc, flags, p, "file of", 0); |
| 1101 | for(i=0; i<p->nFile; i++){ |
| 1102 | nErr += check_exists(p->aFile[i].zUuid, flags, p, "file of", |
| 1103 | p->aFile[i].zName); |
| 1104 | } |
| 1105 | if( p->nParent>0 ){ |
| 1106 | nErr += check_exists(p->azParent[0], flags, p, "parent of", 0); |
| 1107 | } |
| 1108 | for(i=0; i<p->nCChild; i++){ |
| 1109 | nErr += check_exists(p->azCChild[i], flags, p, "in", 0); |
| 1110 | } |
| 1111 | for(i=0; i<p->nTag; i++){ |
| 1112 |