Fossil SCM
If the "r=" or "t=" query parameter on /timeline does not match any tag or branch name, then show an empty timeline rather than just ignoring the query parameter. Ticket [674d5d5556].
Commit
a2f03b8c7fa9bad5dd7148dd66c158f23ea48fa1
Parent
702331e057f6ec3…
1 file changed
+5
-5
+5
-5
| --- src/timeline.c | ||
| +++ src/timeline.c | ||
| @@ -786,11 +786,11 @@ | ||
| 786 | 786 | }else{ |
| 787 | 787 | @ mergeOffset = railPitch-minRailPitch-mLine.w; |
| 788 | 788 | @ mergeOffset = Math.min(mergeOffset, elems.mergeoffset.w); |
| 789 | 789 | @ mergeOffset = mergeOffset>0 ? mergeOffset + line.w/2 : 0; |
| 790 | 790 | } |
| 791 | - @ | |
| 791 | + @ | |
| 792 | 792 | @ var canvasWidth = (nrail-1)*railPitch + node.w; |
| 793 | 793 | @ canvasDiv.style.width = canvasWidth + "px"; |
| 794 | 794 | @ canvasDiv.style.position = "relative"; |
| 795 | 795 | @ } |
| 796 | 796 | @ function drawBox(cls,color,x0,y0,x1,y1){ |
| @@ -1277,24 +1277,24 @@ | ||
| 1277 | 1277 | return; |
| 1278 | 1278 | } |
| 1279 | 1279 | url_initialize(&url, "timeline"); |
| 1280 | 1280 | cgi_query_parameters_to_url(&url); |
| 1281 | 1281 | if( zTagName && g.perm.Read ){ |
| 1282 | - tagid = db_int(0, "SELECT tagid FROM tag WHERE tagname='sym-%q'", zTagName); | |
| 1282 | + tagid = db_int(-1,"SELECT tagid FROM tag WHERE tagname='sym-%q'",zTagName); | |
| 1283 | 1283 | zThisTag = zTagName; |
| 1284 | 1284 | }else if( zBrName && g.perm.Read ){ |
| 1285 | - tagid = db_int(0, "SELECT tagid FROM tag WHERE tagname='sym-%q'",zBrName); | |
| 1285 | + tagid = db_int(-1,"SELECT tagid FROM tag WHERE tagname='sym-%q'",zBrName); | |
| 1286 | 1286 | zThisTag = zBrName; |
| 1287 | 1287 | }else{ |
| 1288 | 1288 | tagid = 0; |
| 1289 | 1289 | } |
| 1290 | 1290 | if( zMark && zMark[0]==0 ){ |
| 1291 | 1291 | if( zAfter ) zMark = zAfter; |
| 1292 | 1292 | if( zBefore ) zMark = zBefore; |
| 1293 | 1293 | if( zCirca ) zMark = zCirca; |
| 1294 | 1294 | } |
| 1295 | - if( tagid>0 | |
| 1295 | + if( tagid | |
| 1296 | 1296 | && db_int(0,"SELECT count(*) FROM tagxref WHERE tagid=%d",tagid)<=nEntry |
| 1297 | 1297 | ){ |
| 1298 | 1298 | nEntry = -1; |
| 1299 | 1299 | zCirca = 0; |
| 1300 | 1300 | } |
| @@ -1493,11 +1493,11 @@ | ||
| 1493 | 1493 | } |
| 1494 | 1494 | else if( zYearWeek ){ |
| 1495 | 1495 | blob_append_sql(&sql, " AND %Q=strftime('%%Y-%%W',event.mtime) ", |
| 1496 | 1496 | zYearWeek); |
| 1497 | 1497 | } |
| 1498 | - if( tagid>0 ){ | |
| 1498 | + if( tagid ){ | |
| 1499 | 1499 | blob_append_sql(&sql, |
| 1500 | 1500 | " AND (EXISTS(SELECT 1 FROM tagxref" |
| 1501 | 1501 | " WHERE tagid=%d AND tagtype>0 AND rid=blob.rid)\n", tagid); |
| 1502 | 1502 | |
| 1503 | 1503 | if( zBrName ){ |
| 1504 | 1504 |
| --- src/timeline.c | |
| +++ src/timeline.c | |
| @@ -786,11 +786,11 @@ | |
| 786 | }else{ |
| 787 | @ mergeOffset = railPitch-minRailPitch-mLine.w; |
| 788 | @ mergeOffset = Math.min(mergeOffset, elems.mergeoffset.w); |
| 789 | @ mergeOffset = mergeOffset>0 ? mergeOffset + line.w/2 : 0; |
| 790 | } |
| 791 | @ |
| 792 | @ var canvasWidth = (nrail-1)*railPitch + node.w; |
| 793 | @ canvasDiv.style.width = canvasWidth + "px"; |
| 794 | @ canvasDiv.style.position = "relative"; |
| 795 | @ } |
| 796 | @ function drawBox(cls,color,x0,y0,x1,y1){ |
| @@ -1277,24 +1277,24 @@ | |
| 1277 | return; |
| 1278 | } |
| 1279 | url_initialize(&url, "timeline"); |
| 1280 | cgi_query_parameters_to_url(&url); |
| 1281 | if( zTagName && g.perm.Read ){ |
| 1282 | tagid = db_int(0, "SELECT tagid FROM tag WHERE tagname='sym-%q'", zTagName); |
| 1283 | zThisTag = zTagName; |
| 1284 | }else if( zBrName && g.perm.Read ){ |
| 1285 | tagid = db_int(0, "SELECT tagid FROM tag WHERE tagname='sym-%q'",zBrName); |
| 1286 | zThisTag = zBrName; |
| 1287 | }else{ |
| 1288 | tagid = 0; |
| 1289 | } |
| 1290 | if( zMark && zMark[0]==0 ){ |
| 1291 | if( zAfter ) zMark = zAfter; |
| 1292 | if( zBefore ) zMark = zBefore; |
| 1293 | if( zCirca ) zMark = zCirca; |
| 1294 | } |
| 1295 | if( tagid>0 |
| 1296 | && db_int(0,"SELECT count(*) FROM tagxref WHERE tagid=%d",tagid)<=nEntry |
| 1297 | ){ |
| 1298 | nEntry = -1; |
| 1299 | zCirca = 0; |
| 1300 | } |
| @@ -1493,11 +1493,11 @@ | |
| 1493 | } |
| 1494 | else if( zYearWeek ){ |
| 1495 | blob_append_sql(&sql, " AND %Q=strftime('%%Y-%%W',event.mtime) ", |
| 1496 | zYearWeek); |
| 1497 | } |
| 1498 | if( tagid>0 ){ |
| 1499 | blob_append_sql(&sql, |
| 1500 | " AND (EXISTS(SELECT 1 FROM tagxref" |
| 1501 | " WHERE tagid=%d AND tagtype>0 AND rid=blob.rid)\n", tagid); |
| 1502 | |
| 1503 | if( zBrName ){ |
| 1504 |
| --- src/timeline.c | |
| +++ src/timeline.c | |
| @@ -786,11 +786,11 @@ | |
| 786 | }else{ |
| 787 | @ mergeOffset = railPitch-minRailPitch-mLine.w; |
| 788 | @ mergeOffset = Math.min(mergeOffset, elems.mergeoffset.w); |
| 789 | @ mergeOffset = mergeOffset>0 ? mergeOffset + line.w/2 : 0; |
| 790 | } |
| 791 | @ |
| 792 | @ var canvasWidth = (nrail-1)*railPitch + node.w; |
| 793 | @ canvasDiv.style.width = canvasWidth + "px"; |
| 794 | @ canvasDiv.style.position = "relative"; |
| 795 | @ } |
| 796 | @ function drawBox(cls,color,x0,y0,x1,y1){ |
| @@ -1277,24 +1277,24 @@ | |
| 1277 | return; |
| 1278 | } |
| 1279 | url_initialize(&url, "timeline"); |
| 1280 | cgi_query_parameters_to_url(&url); |
| 1281 | if( zTagName && g.perm.Read ){ |
| 1282 | tagid = db_int(-1,"SELECT tagid FROM tag WHERE tagname='sym-%q'",zTagName); |
| 1283 | zThisTag = zTagName; |
| 1284 | }else if( zBrName && g.perm.Read ){ |
| 1285 | tagid = db_int(-1,"SELECT tagid FROM tag WHERE tagname='sym-%q'",zBrName); |
| 1286 | zThisTag = zBrName; |
| 1287 | }else{ |
| 1288 | tagid = 0; |
| 1289 | } |
| 1290 | if( zMark && zMark[0]==0 ){ |
| 1291 | if( zAfter ) zMark = zAfter; |
| 1292 | if( zBefore ) zMark = zBefore; |
| 1293 | if( zCirca ) zMark = zCirca; |
| 1294 | } |
| 1295 | if( tagid |
| 1296 | && db_int(0,"SELECT count(*) FROM tagxref WHERE tagid=%d",tagid)<=nEntry |
| 1297 | ){ |
| 1298 | nEntry = -1; |
| 1299 | zCirca = 0; |
| 1300 | } |
| @@ -1493,11 +1493,11 @@ | |
| 1493 | } |
| 1494 | else if( zYearWeek ){ |
| 1495 | blob_append_sql(&sql, " AND %Q=strftime('%%Y-%%W',event.mtime) ", |
| 1496 | zYearWeek); |
| 1497 | } |
| 1498 | if( tagid ){ |
| 1499 | blob_append_sql(&sql, |
| 1500 | " AND (EXISTS(SELECT 1 FROM tagxref" |
| 1501 | " WHERE tagid=%d AND tagtype>0 AND rid=blob.rid)\n", tagid); |
| 1502 | |
| 1503 | if( zBrName ){ |
| 1504 |