Fossil SCM

Fix an issue with the leaf-tracker that comes up if a check-in specifies a shunned check-in as its parent or merge parent.

drh 2011-03-14 21:36 trunk
Commit aa6abc5ed37a352e659d2c6ca2759f13b47aad45
1 file changed +3 -1
+3 -1
--- src/leaf.c
+++ src/leaf.c
@@ -109,11 +109,13 @@
109109
** Schedule a leaf check for "rid" and its parents.
110110
*/
111111
void leaf_eventually_check(int rid){
112112
static Stmt parentsOf;
113113
114
- db_static_prepare(&parentsOf, "SELECT pid FROM plink WHERE cid=:rid");
114
+ db_static_prepare(&parentsOf,
115
+ "SELECT pid FROM plink WHERE cid=:rid AND pid>0"
116
+ );
115117
db_bind_int(&parentsOf, ":rid", rid);
116118
bag_insert(&needToCheck, rid);
117119
while( db_step(&parentsOf)==SQLITE_ROW ){
118120
bag_insert(&needToCheck, db_column_int(&parentsOf, 0));
119121
}
120122
--- src/leaf.c
+++ src/leaf.c
@@ -109,11 +109,13 @@
109 ** Schedule a leaf check for "rid" and its parents.
110 */
111 void leaf_eventually_check(int rid){
112 static Stmt parentsOf;
113
114 db_static_prepare(&parentsOf, "SELECT pid FROM plink WHERE cid=:rid");
 
 
115 db_bind_int(&parentsOf, ":rid", rid);
116 bag_insert(&needToCheck, rid);
117 while( db_step(&parentsOf)==SQLITE_ROW ){
118 bag_insert(&needToCheck, db_column_int(&parentsOf, 0));
119 }
120
--- src/leaf.c
+++ src/leaf.c
@@ -109,11 +109,13 @@
109 ** Schedule a leaf check for "rid" and its parents.
110 */
111 void leaf_eventually_check(int rid){
112 static Stmt parentsOf;
113
114 db_static_prepare(&parentsOf,
115 "SELECT pid FROM plink WHERE cid=:rid AND pid>0"
116 );
117 db_bind_int(&parentsOf, ":rid", rid);
118 bag_insert(&needToCheck, rid);
119 while( db_step(&parentsOf)==SQLITE_ROW ){
120 bag_insert(&needToCheck, db_column_int(&parentsOf, 0));
121 }
122

Keyboard Shortcuts

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