Fossil SCM

Some minor fixes to the /finfo tree construction. Still having problems with incorrect mlink entries being created for files added by merge.

drh 2015-01-25 02:29 UTC mlink-improvements
Commit f603a914320243fb1a1914cde14333933b4092f5
1 file changed +5 -1
+5 -1
--- src/finfo.c
+++ src/finfo.c
@@ -294,10 +294,11 @@
294294
char zPrevDate[20];
295295
const char *zA;
296296
const char *zB;
297297
int n;
298298
int baseCheckin;
299
+ int fnid;
299300
300301
Blob title;
301302
Blob sql;
302303
HQuery url;
303304
GraphContext *pGraph;
@@ -402,10 +403,12 @@
402403
fossil_free(zUuid);
403404
}else{
404405
blob_appendf(&title, "History of files named ");
405406
hyperlinked_path(zFilename, &title, 0, "tree", "");
406407
}
408
+ fnid = db_int(0, "SELECT fnid FROM filename WHERE name=%Q", zFilename);
409
+ if( fShowId ) blob_appendf(&title, " (%d)", fnid);
407410
@ <h2>%b(&title)</h2>
408411
blob_reset(&title);
409412
pGraph = graph_init();
410413
@ <div id="canvas" style="position:relative;width:1px;height:1px;"
411414
@ onclick="clickOnGraph(event)"></div>
@@ -428,15 +431,16 @@
428431
int nParent = 0;
429432
int aParent[32];
430433
static Stmt qparent;
431434
db_static_prepare(&qparent,
432435
"SELECT DISTINCT pid FROM mlink"
433
- " WHERE fid=:fid AND mid=:mid"
436
+ " WHERE fid=:fid AND mid=:mid AND pid>0 AND fnid=:fnid"
434437
" ORDER BY isaux /*sort*/"
435438
);
436439
db_bind_int(&qparent, ":fid", frid);
437440
db_bind_int(&qparent, ":mid", fmid);
441
+ db_bind_int(&qparent, ":fnid", fnid);
438442
while( db_step(&qparent)==SQLITE_ROW && nParent<32 ){
439443
aParent[nParent++] = db_column_int(&qparent, 0);
440444
}
441445
db_reset(&qparent);
442446
if( zBr==0 ) zBr = "trunk";
443447
--- src/finfo.c
+++ src/finfo.c
@@ -294,10 +294,11 @@
294 char zPrevDate[20];
295 const char *zA;
296 const char *zB;
297 int n;
298 int baseCheckin;
 
299
300 Blob title;
301 Blob sql;
302 HQuery url;
303 GraphContext *pGraph;
@@ -402,10 +403,12 @@
402 fossil_free(zUuid);
403 }else{
404 blob_appendf(&title, "History of files named ");
405 hyperlinked_path(zFilename, &title, 0, "tree", "");
406 }
 
 
407 @ <h2>%b(&title)</h2>
408 blob_reset(&title);
409 pGraph = graph_init();
410 @ <div id="canvas" style="position:relative;width:1px;height:1px;"
411 @ onclick="clickOnGraph(event)"></div>
@@ -428,15 +431,16 @@
428 int nParent = 0;
429 int aParent[32];
430 static Stmt qparent;
431 db_static_prepare(&qparent,
432 "SELECT DISTINCT pid FROM mlink"
433 " WHERE fid=:fid AND mid=:mid"
434 " ORDER BY isaux /*sort*/"
435 );
436 db_bind_int(&qparent, ":fid", frid);
437 db_bind_int(&qparent, ":mid", fmid);
 
438 while( db_step(&qparent)==SQLITE_ROW && nParent<32 ){
439 aParent[nParent++] = db_column_int(&qparent, 0);
440 }
441 db_reset(&qparent);
442 if( zBr==0 ) zBr = "trunk";
443
--- src/finfo.c
+++ src/finfo.c
@@ -294,10 +294,11 @@
294 char zPrevDate[20];
295 const char *zA;
296 const char *zB;
297 int n;
298 int baseCheckin;
299 int fnid;
300
301 Blob title;
302 Blob sql;
303 HQuery url;
304 GraphContext *pGraph;
@@ -402,10 +403,12 @@
403 fossil_free(zUuid);
404 }else{
405 blob_appendf(&title, "History of files named ");
406 hyperlinked_path(zFilename, &title, 0, "tree", "");
407 }
408 fnid = db_int(0, "SELECT fnid FROM filename WHERE name=%Q", zFilename);
409 if( fShowId ) blob_appendf(&title, " (%d)", fnid);
410 @ <h2>%b(&title)</h2>
411 blob_reset(&title);
412 pGraph = graph_init();
413 @ <div id="canvas" style="position:relative;width:1px;height:1px;"
414 @ onclick="clickOnGraph(event)"></div>
@@ -428,15 +431,16 @@
431 int nParent = 0;
432 int aParent[32];
433 static Stmt qparent;
434 db_static_prepare(&qparent,
435 "SELECT DISTINCT pid FROM mlink"
436 " WHERE fid=:fid AND mid=:mid AND pid>0 AND fnid=:fnid"
437 " ORDER BY isaux /*sort*/"
438 );
439 db_bind_int(&qparent, ":fid", frid);
440 db_bind_int(&qparent, ":mid", fmid);
441 db_bind_int(&qparent, ":fnid", fnid);
442 while( db_step(&qparent)==SQLITE_ROW && nParent<32 ){
443 aParent[nParent++] = db_column_int(&qparent, 0);
444 }
445 db_reset(&qparent);
446 if( zBr==0 ) zBr = "trunk";
447

Keyboard Shortcuts

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