Fossil SCM

Correct some as-yet-unused semantics in symbolic_name_to_rid() which were inadvertently broken in [1ef6499a9a], which was reverting some new breakage from [4d8c30265b3dc76d]. Problem seen only by accident when comparison impls between fossil and libfossil. The value of the feature being repaired is, in hindsight, questionable.

stephan 2024-12-26 09:27 trunk
Commit 15df204706e2713f46010e68bc23798fc342d958cdaeebf8adeebbc79833b7d9
1 file changed +5
+5
--- src/name.c
+++ src/name.c
@@ -453,10 +453,12 @@
453453
}else if( fossil_strcmp(zTag, "next")==0 ){
454454
rid = db_int(0, "SELECT cid FROM plink WHERE pid=%d"
455455
" ORDER BY isprim DESC, mtime DESC", ridCkout);
456456
}else if( isCheckin>1 && fossil_strcmp(zTag, "ckout")==0 ){
457457
rid = RID_CKOUT;
458
+ assert(ridCkout>0);
459
+ g.localOpen = ridCkout;
458460
}
459461
if( rid ) return rid;
460462
}
461463
462464
/* Date and times */
@@ -699,10 +701,13 @@
699701
}else if( rid==0 ){
700702
fossil_error(iErrPriority, "cannot resolve name: %s", zName);
701703
return 1;
702704
}else{
703705
blob_reset(pName);
706
+ if( RID_CKOUT==rid ) {
707
+ rid = g.localOpen;
708
+ }
704709
db_blob(pName, "SELECT uuid FROM blob WHERE rid=%d", rid);
705710
return 0;
706711
}
707712
}
708713
709714
--- src/name.c
+++ src/name.c
@@ -453,10 +453,12 @@
453 }else if( fossil_strcmp(zTag, "next")==0 ){
454 rid = db_int(0, "SELECT cid FROM plink WHERE pid=%d"
455 " ORDER BY isprim DESC, mtime DESC", ridCkout);
456 }else if( isCheckin>1 && fossil_strcmp(zTag, "ckout")==0 ){
457 rid = RID_CKOUT;
 
 
458 }
459 if( rid ) return rid;
460 }
461
462 /* Date and times */
@@ -699,10 +701,13 @@
699 }else if( rid==0 ){
700 fossil_error(iErrPriority, "cannot resolve name: %s", zName);
701 return 1;
702 }else{
703 blob_reset(pName);
 
 
 
704 db_blob(pName, "SELECT uuid FROM blob WHERE rid=%d", rid);
705 return 0;
706 }
707 }
708
709
--- src/name.c
+++ src/name.c
@@ -453,10 +453,12 @@
453 }else if( fossil_strcmp(zTag, "next")==0 ){
454 rid = db_int(0, "SELECT cid FROM plink WHERE pid=%d"
455 " ORDER BY isprim DESC, mtime DESC", ridCkout);
456 }else if( isCheckin>1 && fossil_strcmp(zTag, "ckout")==0 ){
457 rid = RID_CKOUT;
458 assert(ridCkout>0);
459 g.localOpen = ridCkout;
460 }
461 if( rid ) return rid;
462 }
463
464 /* Date and times */
@@ -699,10 +701,13 @@
701 }else if( rid==0 ){
702 fossil_error(iErrPriority, "cannot resolve name: %s", zName);
703 return 1;
704 }else{
705 blob_reset(pName);
706 if( RID_CKOUT==rid ) {
707 rid = g.localOpen;
708 }
709 db_blob(pName, "SELECT uuid FROM blob WHERE rid=%d", rid);
710 return 0;
711 }
712 }
713
714

Keyboard Shortcuts

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