Fossil SCM

checkin command lost merge information if --force option used.

Closed

986daabbc4b969d… · opened 15 years, 5 months ago

Type
Code_Defect
Priority
Severity
Cosmetic
Resolution
Overcome_By_Events
Subsystem
Created
Oct. 19, 2010 6:48 a.m.

version [f1d309ccd7] or later, checkin --force option disable clock skew alarm.
But if this option specified, checkin_cmd() skip append merged IDs to manifest's "P" card.
It must not skip collect IDs from vmerge table even forceFlag is set.

``` --- ../7954ccba68/src/checkin.c 2010-10-19 00:28:10.437308800 UTC +++ src/checkin.c 2010-10-19 15:25:37.979195200 UTC @@ -826,23 +826,26 @@ db_finalize(&q); zUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", vid); blob_appendf(&manifest, "P %s", zUuid); - - if( !forceFlag ){ - checkin_verify_younger(vid, zUuid, zDate); - db_prepare(&q2, "SELECT merge FROM vmerge WHERE id=:id"); - db_bind_int(&q2, ":id", 0); - while( db_step(&q2)==SQLITE_ROW ){ - int mid = db_column_int(&q2, 0); - if( !g.markPrivate && content_is_private(mid) ) continue; - zUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", mid); - if( zUuid ){ - blob_appendf(&manifest, " %s", zUuid); - checkin_verify_younger(mid, zUuid, zDate); - free(zUuid); - } - } - db_finalize(&q2); - } + if( !forceFlag ){ + checkin_verify_younger(vid, zUuid, zDate); + } + + db_prepare(&q2, "SELECT merge FROM vmerge WHERE id=:id"); + db_bind_int(&q2, ":id", 0); + while( db_step(&q2)==SQLITE_ROW ){ + int mid = db_column_int(&q2, 0); + if( !g.markPrivate && content_is_private(mid) ) continue; + zUuid = db_text(0, "SELECT uuid FROM blob WHERE rid=%d", mid); + if( zUuid ){ + blob_appendf(&manifest, " %s", zUuid); + if( !forceFlag ){ + checkin_verify_younger(mid, zUuid, zDate); + } + free(zUuid); + } + } + db_finalize(&q2);

blob_appendf(&manifest, "\n"); blob_appendf(&manifest, "R %b\n", &cksum1);

```

Comments (1)

stephan 3 years, 2 months ago

The corresponding code has been completely overhauled since then.

Keyboard Shortcuts

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