Fossil SCM

Fix a floating-point comparison error that can cause blob entries to be omitted from the timeline.

drh 2011-05-13 14:55 trunk
Commit 25ae319b843d4ae1710e50d4b95225c5cd670d46
1 file changed +2
--- src/manifest.c
+++ src/manifest.c
@@ -1710,10 +1710,11 @@
17101710
"SELECT rid FROM tagxref"
17111711
" WHERE tagid=%d AND mtime<%.17g"
17121712
" ORDER BY mtime DESC",
17131713
tagid, p->rDate
17141714
);
1715
+ if( prior==rid ) prior = 0;
17151716
if( prior ){
17161717
content_deltify(prior, rid, 0);
17171718
db_multi_exec(
17181719
"DELETE FROM event"
17191720
" WHERE type='e'"
@@ -1726,10 +1727,11 @@
17261727
"SELECT rid FROM tagxref"
17271728
" WHERE tagid=%d AND mtime>%.17g"
17281729
" ORDER BY mtime",
17291730
tagid, p->rDate
17301731
);
1732
+ if( subsequent==rid ) subsequent = 0;
17311733
if( subsequent ){
17321734
content_deltify(rid, subsequent, 0);
17331735
}else{
17341736
db_multi_exec(
17351737
"REPLACE INTO event(type,mtime,objid,tagid,user,comment,bgcolor)"
17361738
--- src/manifest.c
+++ src/manifest.c
@@ -1710,10 +1710,11 @@
1710 "SELECT rid FROM tagxref"
1711 " WHERE tagid=%d AND mtime<%.17g"
1712 " ORDER BY mtime DESC",
1713 tagid, p->rDate
1714 );
 
1715 if( prior ){
1716 content_deltify(prior, rid, 0);
1717 db_multi_exec(
1718 "DELETE FROM event"
1719 " WHERE type='e'"
@@ -1726,10 +1727,11 @@
1726 "SELECT rid FROM tagxref"
1727 " WHERE tagid=%d AND mtime>%.17g"
1728 " ORDER BY mtime",
1729 tagid, p->rDate
1730 );
 
1731 if( subsequent ){
1732 content_deltify(rid, subsequent, 0);
1733 }else{
1734 db_multi_exec(
1735 "REPLACE INTO event(type,mtime,objid,tagid,user,comment,bgcolor)"
1736
--- src/manifest.c
+++ src/manifest.c
@@ -1710,10 +1710,11 @@
1710 "SELECT rid FROM tagxref"
1711 " WHERE tagid=%d AND mtime<%.17g"
1712 " ORDER BY mtime DESC",
1713 tagid, p->rDate
1714 );
1715 if( prior==rid ) prior = 0;
1716 if( prior ){
1717 content_deltify(prior, rid, 0);
1718 db_multi_exec(
1719 "DELETE FROM event"
1720 " WHERE type='e'"
@@ -1726,10 +1727,11 @@
1727 "SELECT rid FROM tagxref"
1728 " WHERE tagid=%d AND mtime>%.17g"
1729 " ORDER BY mtime",
1730 tagid, p->rDate
1731 );
1732 if( subsequent==rid ) subsequent = 0;
1733 if( subsequent ){
1734 content_deltify(rid, subsequent, 0);
1735 }else{
1736 db_multi_exec(
1737 "REPLACE INTO event(type,mtime,objid,tagid,user,comment,bgcolor)"
1738

Keyboard Shortcuts

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