Fossil SCM
Be sure to finalize all queries on the /info page.
Commit
cca1adad02b98121e7f733164ba8d95e1c1e2db0
Parent
34ccf66e1748165…
1 file changed
+27
-27
+27
-27
| --- src/info.c | ||
| +++ src/info.c | ||
| @@ -471,11 +471,11 @@ | ||
| 471 | 471 | ** With /vinfo and /info, only a list of the changed files are |
| 472 | 472 | ** shown, without diffs. This behavior is inverted if the |
| 473 | 473 | ** "show-version-diffs" setting is turned on. |
| 474 | 474 | */ |
| 475 | 475 | void ci_page(void){ |
| 476 | - Stmt q; | |
| 476 | + Stmt q1, q2, q3; | |
| 477 | 477 | int rid; |
| 478 | 478 | int isLeaf; |
| 479 | 479 | int verboseFlag; /* True to show diffs */ |
| 480 | 480 | int sideBySide; /* True for side-by-side diffs */ |
| 481 | 481 | u64 diffFlags; /* Flag parameter for text_diff() */ |
| @@ -502,21 +502,21 @@ | ||
| 502 | 502 | "SELECT uuid FROM plink, blob" |
| 503 | 503 | " WHERE plink.cid=%d AND blob.rid=plink.pid AND plink.isprim", |
| 504 | 504 | rid |
| 505 | 505 | ); |
| 506 | 506 | isLeaf = is_a_leaf(rid); |
| 507 | - db_prepare(&q, | |
| 507 | + db_prepare(&q1, | |
| 508 | 508 | "SELECT uuid, datetime(mtime, 'localtime'), user, comment," |
| 509 | 509 | " datetime(omtime, 'localtime'), mtime" |
| 510 | 510 | " FROM blob, event" |
| 511 | 511 | " WHERE blob.rid=%d" |
| 512 | 512 | " AND event.objid=%d", |
| 513 | 513 | rid, rid |
| 514 | 514 | ); |
| 515 | 515 | sideBySide = !is_false(PD("sbs","1")); |
| 516 | - if( db_step(&q)==SQLITE_ROW ){ | |
| 517 | - const char *zUuid = db_column_text(&q, 0); | |
| 516 | + if( db_step(&q1)==SQLITE_ROW ){ | |
| 517 | + const char *zUuid = db_column_text(&q1, 0); | |
| 518 | 518 | char *zTitle = mprintf("Check-in [%.10s]", zUuid); |
| 519 | 519 | char *zEUser, *zEComment; |
| 520 | 520 | const char *zUser; |
| 521 | 521 | const char *zComment; |
| 522 | 522 | const char *zDate; |
| @@ -529,14 +529,14 @@ | ||
| 529 | 529 | "SELECT value FROM tagxref WHERE tagid=%d AND rid=%d", |
| 530 | 530 | TAG_USER, rid); |
| 531 | 531 | zEComment = db_text(0, |
| 532 | 532 | "SELECT value FROM tagxref WHERE tagid=%d AND rid=%d", |
| 533 | 533 | TAG_COMMENT, rid); |
| 534 | - zUser = db_column_text(&q, 2); | |
| 535 | - zComment = db_column_text(&q, 3); | |
| 536 | - zDate = db_column_text(&q,1); | |
| 537 | - zOrigDate = db_column_text(&q, 4); | |
| 534 | + zUser = db_column_text(&q1, 2); | |
| 535 | + zComment = db_column_text(&q1, 3); | |
| 536 | + zDate = db_column_text(&q1,1); | |
| 537 | + zOrigDate = db_column_text(&q1, 4); | |
| 538 | 538 | @ <div class="section">Overview</div> |
| 539 | 539 | @ <table class="label-value"> |
| 540 | 540 | @ <tr><th>SHA1 Hash:</th><td>%s(zUuid) |
| 541 | 541 | if( g.perm.Setup ){ |
| 542 | 542 | @ (Record ID: %d(rid)) |
| @@ -562,25 +562,25 @@ | ||
| 562 | 562 | @ <tr><th>Original Comment:</th><td class="infoComment">%!w(zComment)</td></tr> |
| 563 | 563 | }else{ |
| 564 | 564 | @ <tr><th>Comment:</th><td class="infoComment">%!w(zComment)</td></tr> |
| 565 | 565 | } |
| 566 | 566 | if( g.perm.Admin ){ |
| 567 | - db_prepare(&q, | |
| 567 | + db_prepare(&q2, | |
| 568 | 568 | "SELECT rcvfrom.ipaddr, user.login, datetime(rcvfrom.mtime)" |
| 569 | 569 | " FROM blob JOIN rcvfrom USING(rcvid) LEFT JOIN user USING(uid)" |
| 570 | 570 | " WHERE blob.rid=%d", |
| 571 | 571 | rid |
| 572 | 572 | ); |
| 573 | - if( db_step(&q)==SQLITE_ROW ){ | |
| 574 | - const char *zIpAddr = db_column_text(&q, 0); | |
| 575 | - const char *zUser = db_column_text(&q, 1); | |
| 576 | - const char *zDate = db_column_text(&q, 2); | |
| 573 | + if( db_step(&q2)==SQLITE_ROW ){ | |
| 574 | + const char *zIpAddr = db_column_text(&q2, 0); | |
| 575 | + const char *zUser = db_column_text(&q2, 1); | |
| 576 | + const char *zDate = db_column_text(&q2, 2); | |
| 577 | 577 | if( zUser==0 || zUser[0]==0 ) zUser = "unknown"; |
| 578 | 578 | @ <tr><th>Received From:</th> |
| 579 | 579 | @ <td>%h(zUser) @ %h(zIpAddr) on %s(zDate)</td></tr> |
| 580 | 580 | } |
| 581 | - db_finalize(&q); | |
| 581 | + db_finalize(&q2); | |
| 582 | 582 | } |
| 583 | 583 | if( g.perm.Hyperlink ){ |
| 584 | 584 | const char *zProjName = db_get("project-name", "unnamed"); |
| 585 | 585 | @ <tr><th>Timelines:</th><td> |
| 586 | 586 | @ %z(href("%R/timeline?f=%S",zUuid))family</a> |
| @@ -591,19 +591,19 @@ | ||
| 591 | 591 | @ | %z(href("%R/timeline?d=%S",zUuid))descendants</a> |
| 592 | 592 | } |
| 593 | 593 | if( zParent && !isLeaf ){ |
| 594 | 594 | @ | %z(href("%R/timeline?dp=%S",zUuid))both</a> |
| 595 | 595 | } |
| 596 | - db_prepare(&q, "SELECT substr(tag.tagname,5) FROM tagxref, tag " | |
| 596 | + db_prepare(&q2,"SELECT substr(tag.tagname,5) FROM tagxref, tag " | |
| 597 | 597 | " WHERE rid=%d AND tagtype>0 " |
| 598 | 598 | " AND tag.tagid=tagxref.tagid " |
| 599 | 599 | " AND +tag.tagname GLOB 'sym-*'", rid); |
| 600 | - while( db_step(&q)==SQLITE_ROW ){ | |
| 601 | - const char *zTagName = db_column_text(&q, 0); | |
| 600 | + while( db_step(&q2)==SQLITE_ROW ){ | |
| 601 | + const char *zTagName = db_column_text(&q2, 0); | |
| 602 | 602 | @ | %z(href("%R/timeline?r=%T",zTagName))%h(zTagName)</a> |
| 603 | 603 | } |
| 604 | - db_finalize(&q); | |
| 604 | + db_finalize(&q2); | |
| 605 | 605 | |
| 606 | 606 | |
| 607 | 607 | /* The Download: line */ |
| 608 | 608 | if( g.perm.Zip ){ |
| 609 | 609 | char *zUrl = mprintf("%R/tarball/%t-%S.tar.gz?uuid=%s", |
| @@ -630,11 +630,11 @@ | ||
| 630 | 630 | @ </table> |
| 631 | 631 | }else{ |
| 632 | 632 | style_header("Check-in Information"); |
| 633 | 633 | login_anonymous_available(); |
| 634 | 634 | } |
| 635 | - db_finalize(&q); | |
| 635 | + db_finalize(&q1); | |
| 636 | 636 | showTags(rid, ""); |
| 637 | 637 | if( zParent ){ |
| 638 | 638 | @ <div class="section">Changes</div> |
| 639 | 639 | @ <div class="sectionmenu"> |
| 640 | 640 | verboseFlag = g.zPath[0]!='c'; |
| @@ -677,11 +677,11 @@ | ||
| 677 | 677 | @ patch</a></div> |
| 678 | 678 | if( pRe ){ |
| 679 | 679 | @ <p><b>Only differences that match regular expression "%h(zRe)" |
| 680 | 680 | @ are shown.</b></p> |
| 681 | 681 | } |
| 682 | - db_prepare(&q, | |
| 682 | + db_prepare(&q3, | |
| 683 | 683 | "SELECT name," |
| 684 | 684 | " mperm," |
| 685 | 685 | " (SELECT uuid FROM blob WHERE rid=mlink.pid)," |
| 686 | 686 | " (SELECT uuid FROM blob WHERE rid=mlink.fid)," |
| 687 | 687 | " (SELECT name FROM filename WHERE filename.fnid=mlink.pfnid)" |
| @@ -691,19 +691,19 @@ | ||
| 691 | 691 | " OR mlink.fnid NOT IN (SELECT pfnid FROM mlink WHERE mid=%d))" |
| 692 | 692 | " ORDER BY name /*sort*/", |
| 693 | 693 | rid, rid |
| 694 | 694 | ); |
| 695 | 695 | diffFlags = construct_diff_flags(verboseFlag, sideBySide); |
| 696 | - while( db_step(&q)==SQLITE_ROW ){ | |
| 697 | - const char *zName = db_column_text(&q,0); | |
| 698 | - int mperm = db_column_int(&q, 1); | |
| 699 | - const char *zOld = db_column_text(&q,2); | |
| 700 | - const char *zNew = db_column_text(&q,3); | |
| 701 | - const char *zOldName = db_column_text(&q, 4); | |
| 696 | + while( db_step(&q3)==SQLITE_ROW ){ | |
| 697 | + const char *zName = db_column_text(&q3,0); | |
| 698 | + int mperm = db_column_int(&q3, 1); | |
| 699 | + const char *zOld = db_column_text(&q3,2); | |
| 700 | + const char *zNew = db_column_text(&q3,3); | |
| 701 | + const char *zOldName = db_column_text(&q3, 4); | |
| 702 | 702 | append_file_change_line(zName, zOld, zNew, zOldName, diffFlags,pRe,mperm); |
| 703 | 703 | } |
| 704 | - db_finalize(&q); | |
| 704 | + db_finalize(&q3); | |
| 705 | 705 | } |
| 706 | 706 | append_diff_javascript(sideBySide); |
| 707 | 707 | style_footer(); |
| 708 | 708 | } |
| 709 | 709 | |
| 710 | 710 |
| --- src/info.c | |
| +++ src/info.c | |
| @@ -471,11 +471,11 @@ | |
| 471 | ** With /vinfo and /info, only a list of the changed files are |
| 472 | ** shown, without diffs. This behavior is inverted if the |
| 473 | ** "show-version-diffs" setting is turned on. |
| 474 | */ |
| 475 | void ci_page(void){ |
| 476 | Stmt q; |
| 477 | int rid; |
| 478 | int isLeaf; |
| 479 | int verboseFlag; /* True to show diffs */ |
| 480 | int sideBySide; /* True for side-by-side diffs */ |
| 481 | u64 diffFlags; /* Flag parameter for text_diff() */ |
| @@ -502,21 +502,21 @@ | |
| 502 | "SELECT uuid FROM plink, blob" |
| 503 | " WHERE plink.cid=%d AND blob.rid=plink.pid AND plink.isprim", |
| 504 | rid |
| 505 | ); |
| 506 | isLeaf = is_a_leaf(rid); |
| 507 | db_prepare(&q, |
| 508 | "SELECT uuid, datetime(mtime, 'localtime'), user, comment," |
| 509 | " datetime(omtime, 'localtime'), mtime" |
| 510 | " FROM blob, event" |
| 511 | " WHERE blob.rid=%d" |
| 512 | " AND event.objid=%d", |
| 513 | rid, rid |
| 514 | ); |
| 515 | sideBySide = !is_false(PD("sbs","1")); |
| 516 | if( db_step(&q)==SQLITE_ROW ){ |
| 517 | const char *zUuid = db_column_text(&q, 0); |
| 518 | char *zTitle = mprintf("Check-in [%.10s]", zUuid); |
| 519 | char *zEUser, *zEComment; |
| 520 | const char *zUser; |
| 521 | const char *zComment; |
| 522 | const char *zDate; |
| @@ -529,14 +529,14 @@ | |
| 529 | "SELECT value FROM tagxref WHERE tagid=%d AND rid=%d", |
| 530 | TAG_USER, rid); |
| 531 | zEComment = db_text(0, |
| 532 | "SELECT value FROM tagxref WHERE tagid=%d AND rid=%d", |
| 533 | TAG_COMMENT, rid); |
| 534 | zUser = db_column_text(&q, 2); |
| 535 | zComment = db_column_text(&q, 3); |
| 536 | zDate = db_column_text(&q,1); |
| 537 | zOrigDate = db_column_text(&q, 4); |
| 538 | @ <div class="section">Overview</div> |
| 539 | @ <table class="label-value"> |
| 540 | @ <tr><th>SHA1 Hash:</th><td>%s(zUuid) |
| 541 | if( g.perm.Setup ){ |
| 542 | @ (Record ID: %d(rid)) |
| @@ -562,25 +562,25 @@ | |
| 562 | @ <tr><th>Original Comment:</th><td class="infoComment">%!w(zComment)</td></tr> |
| 563 | }else{ |
| 564 | @ <tr><th>Comment:</th><td class="infoComment">%!w(zComment)</td></tr> |
| 565 | } |
| 566 | if( g.perm.Admin ){ |
| 567 | db_prepare(&q, |
| 568 | "SELECT rcvfrom.ipaddr, user.login, datetime(rcvfrom.mtime)" |
| 569 | " FROM blob JOIN rcvfrom USING(rcvid) LEFT JOIN user USING(uid)" |
| 570 | " WHERE blob.rid=%d", |
| 571 | rid |
| 572 | ); |
| 573 | if( db_step(&q)==SQLITE_ROW ){ |
| 574 | const char *zIpAddr = db_column_text(&q, 0); |
| 575 | const char *zUser = db_column_text(&q, 1); |
| 576 | const char *zDate = db_column_text(&q, 2); |
| 577 | if( zUser==0 || zUser[0]==0 ) zUser = "unknown"; |
| 578 | @ <tr><th>Received From:</th> |
| 579 | @ <td>%h(zUser) @ %h(zIpAddr) on %s(zDate)</td></tr> |
| 580 | } |
| 581 | db_finalize(&q); |
| 582 | } |
| 583 | if( g.perm.Hyperlink ){ |
| 584 | const char *zProjName = db_get("project-name", "unnamed"); |
| 585 | @ <tr><th>Timelines:</th><td> |
| 586 | @ %z(href("%R/timeline?f=%S",zUuid))family</a> |
| @@ -591,19 +591,19 @@ | |
| 591 | @ | %z(href("%R/timeline?d=%S",zUuid))descendants</a> |
| 592 | } |
| 593 | if( zParent && !isLeaf ){ |
| 594 | @ | %z(href("%R/timeline?dp=%S",zUuid))both</a> |
| 595 | } |
| 596 | db_prepare(&q, "SELECT substr(tag.tagname,5) FROM tagxref, tag " |
| 597 | " WHERE rid=%d AND tagtype>0 " |
| 598 | " AND tag.tagid=tagxref.tagid " |
| 599 | " AND +tag.tagname GLOB 'sym-*'", rid); |
| 600 | while( db_step(&q)==SQLITE_ROW ){ |
| 601 | const char *zTagName = db_column_text(&q, 0); |
| 602 | @ | %z(href("%R/timeline?r=%T",zTagName))%h(zTagName)</a> |
| 603 | } |
| 604 | db_finalize(&q); |
| 605 | |
| 606 | |
| 607 | /* The Download: line */ |
| 608 | if( g.perm.Zip ){ |
| 609 | char *zUrl = mprintf("%R/tarball/%t-%S.tar.gz?uuid=%s", |
| @@ -630,11 +630,11 @@ | |
| 630 | @ </table> |
| 631 | }else{ |
| 632 | style_header("Check-in Information"); |
| 633 | login_anonymous_available(); |
| 634 | } |
| 635 | db_finalize(&q); |
| 636 | showTags(rid, ""); |
| 637 | if( zParent ){ |
| 638 | @ <div class="section">Changes</div> |
| 639 | @ <div class="sectionmenu"> |
| 640 | verboseFlag = g.zPath[0]!='c'; |
| @@ -677,11 +677,11 @@ | |
| 677 | @ patch</a></div> |
| 678 | if( pRe ){ |
| 679 | @ <p><b>Only differences that match regular expression "%h(zRe)" |
| 680 | @ are shown.</b></p> |
| 681 | } |
| 682 | db_prepare(&q, |
| 683 | "SELECT name," |
| 684 | " mperm," |
| 685 | " (SELECT uuid FROM blob WHERE rid=mlink.pid)," |
| 686 | " (SELECT uuid FROM blob WHERE rid=mlink.fid)," |
| 687 | " (SELECT name FROM filename WHERE filename.fnid=mlink.pfnid)" |
| @@ -691,19 +691,19 @@ | |
| 691 | " OR mlink.fnid NOT IN (SELECT pfnid FROM mlink WHERE mid=%d))" |
| 692 | " ORDER BY name /*sort*/", |
| 693 | rid, rid |
| 694 | ); |
| 695 | diffFlags = construct_diff_flags(verboseFlag, sideBySide); |
| 696 | while( db_step(&q)==SQLITE_ROW ){ |
| 697 | const char *zName = db_column_text(&q,0); |
| 698 | int mperm = db_column_int(&q, 1); |
| 699 | const char *zOld = db_column_text(&q,2); |
| 700 | const char *zNew = db_column_text(&q,3); |
| 701 | const char *zOldName = db_column_text(&q, 4); |
| 702 | append_file_change_line(zName, zOld, zNew, zOldName, diffFlags,pRe,mperm); |
| 703 | } |
| 704 | db_finalize(&q); |
| 705 | } |
| 706 | append_diff_javascript(sideBySide); |
| 707 | style_footer(); |
| 708 | } |
| 709 | |
| 710 |
| --- src/info.c | |
| +++ src/info.c | |
| @@ -471,11 +471,11 @@ | |
| 471 | ** With /vinfo and /info, only a list of the changed files are |
| 472 | ** shown, without diffs. This behavior is inverted if the |
| 473 | ** "show-version-diffs" setting is turned on. |
| 474 | */ |
| 475 | void ci_page(void){ |
| 476 | Stmt q1, q2, q3; |
| 477 | int rid; |
| 478 | int isLeaf; |
| 479 | int verboseFlag; /* True to show diffs */ |
| 480 | int sideBySide; /* True for side-by-side diffs */ |
| 481 | u64 diffFlags; /* Flag parameter for text_diff() */ |
| @@ -502,21 +502,21 @@ | |
| 502 | "SELECT uuid FROM plink, blob" |
| 503 | " WHERE plink.cid=%d AND blob.rid=plink.pid AND plink.isprim", |
| 504 | rid |
| 505 | ); |
| 506 | isLeaf = is_a_leaf(rid); |
| 507 | db_prepare(&q1, |
| 508 | "SELECT uuid, datetime(mtime, 'localtime'), user, comment," |
| 509 | " datetime(omtime, 'localtime'), mtime" |
| 510 | " FROM blob, event" |
| 511 | " WHERE blob.rid=%d" |
| 512 | " AND event.objid=%d", |
| 513 | rid, rid |
| 514 | ); |
| 515 | sideBySide = !is_false(PD("sbs","1")); |
| 516 | if( db_step(&q1)==SQLITE_ROW ){ |
| 517 | const char *zUuid = db_column_text(&q1, 0); |
| 518 | char *zTitle = mprintf("Check-in [%.10s]", zUuid); |
| 519 | char *zEUser, *zEComment; |
| 520 | const char *zUser; |
| 521 | const char *zComment; |
| 522 | const char *zDate; |
| @@ -529,14 +529,14 @@ | |
| 529 | "SELECT value FROM tagxref WHERE tagid=%d AND rid=%d", |
| 530 | TAG_USER, rid); |
| 531 | zEComment = db_text(0, |
| 532 | "SELECT value FROM tagxref WHERE tagid=%d AND rid=%d", |
| 533 | TAG_COMMENT, rid); |
| 534 | zUser = db_column_text(&q1, 2); |
| 535 | zComment = db_column_text(&q1, 3); |
| 536 | zDate = db_column_text(&q1,1); |
| 537 | zOrigDate = db_column_text(&q1, 4); |
| 538 | @ <div class="section">Overview</div> |
| 539 | @ <table class="label-value"> |
| 540 | @ <tr><th>SHA1 Hash:</th><td>%s(zUuid) |
| 541 | if( g.perm.Setup ){ |
| 542 | @ (Record ID: %d(rid)) |
| @@ -562,25 +562,25 @@ | |
| 562 | @ <tr><th>Original Comment:</th><td class="infoComment">%!w(zComment)</td></tr> |
| 563 | }else{ |
| 564 | @ <tr><th>Comment:</th><td class="infoComment">%!w(zComment)</td></tr> |
| 565 | } |
| 566 | if( g.perm.Admin ){ |
| 567 | db_prepare(&q2, |
| 568 | "SELECT rcvfrom.ipaddr, user.login, datetime(rcvfrom.mtime)" |
| 569 | " FROM blob JOIN rcvfrom USING(rcvid) LEFT JOIN user USING(uid)" |
| 570 | " WHERE blob.rid=%d", |
| 571 | rid |
| 572 | ); |
| 573 | if( db_step(&q2)==SQLITE_ROW ){ |
| 574 | const char *zIpAddr = db_column_text(&q2, 0); |
| 575 | const char *zUser = db_column_text(&q2, 1); |
| 576 | const char *zDate = db_column_text(&q2, 2); |
| 577 | if( zUser==0 || zUser[0]==0 ) zUser = "unknown"; |
| 578 | @ <tr><th>Received From:</th> |
| 579 | @ <td>%h(zUser) @ %h(zIpAddr) on %s(zDate)</td></tr> |
| 580 | } |
| 581 | db_finalize(&q2); |
| 582 | } |
| 583 | if( g.perm.Hyperlink ){ |
| 584 | const char *zProjName = db_get("project-name", "unnamed"); |
| 585 | @ <tr><th>Timelines:</th><td> |
| 586 | @ %z(href("%R/timeline?f=%S",zUuid))family</a> |
| @@ -591,19 +591,19 @@ | |
| 591 | @ | %z(href("%R/timeline?d=%S",zUuid))descendants</a> |
| 592 | } |
| 593 | if( zParent && !isLeaf ){ |
| 594 | @ | %z(href("%R/timeline?dp=%S",zUuid))both</a> |
| 595 | } |
| 596 | db_prepare(&q2,"SELECT substr(tag.tagname,5) FROM tagxref, tag " |
| 597 | " WHERE rid=%d AND tagtype>0 " |
| 598 | " AND tag.tagid=tagxref.tagid " |
| 599 | " AND +tag.tagname GLOB 'sym-*'", rid); |
| 600 | while( db_step(&q2)==SQLITE_ROW ){ |
| 601 | const char *zTagName = db_column_text(&q2, 0); |
| 602 | @ | %z(href("%R/timeline?r=%T",zTagName))%h(zTagName)</a> |
| 603 | } |
| 604 | db_finalize(&q2); |
| 605 | |
| 606 | |
| 607 | /* The Download: line */ |
| 608 | if( g.perm.Zip ){ |
| 609 | char *zUrl = mprintf("%R/tarball/%t-%S.tar.gz?uuid=%s", |
| @@ -630,11 +630,11 @@ | |
| 630 | @ </table> |
| 631 | }else{ |
| 632 | style_header("Check-in Information"); |
| 633 | login_anonymous_available(); |
| 634 | } |
| 635 | db_finalize(&q1); |
| 636 | showTags(rid, ""); |
| 637 | if( zParent ){ |
| 638 | @ <div class="section">Changes</div> |
| 639 | @ <div class="sectionmenu"> |
| 640 | verboseFlag = g.zPath[0]!='c'; |
| @@ -677,11 +677,11 @@ | |
| 677 | @ patch</a></div> |
| 678 | if( pRe ){ |
| 679 | @ <p><b>Only differences that match regular expression "%h(zRe)" |
| 680 | @ are shown.</b></p> |
| 681 | } |
| 682 | db_prepare(&q3, |
| 683 | "SELECT name," |
| 684 | " mperm," |
| 685 | " (SELECT uuid FROM blob WHERE rid=mlink.pid)," |
| 686 | " (SELECT uuid FROM blob WHERE rid=mlink.fid)," |
| 687 | " (SELECT name FROM filename WHERE filename.fnid=mlink.pfnid)" |
| @@ -691,19 +691,19 @@ | |
| 691 | " OR mlink.fnid NOT IN (SELECT pfnid FROM mlink WHERE mid=%d))" |
| 692 | " ORDER BY name /*sort*/", |
| 693 | rid, rid |
| 694 | ); |
| 695 | diffFlags = construct_diff_flags(verboseFlag, sideBySide); |
| 696 | while( db_step(&q3)==SQLITE_ROW ){ |
| 697 | const char *zName = db_column_text(&q3,0); |
| 698 | int mperm = db_column_int(&q3, 1); |
| 699 | const char *zOld = db_column_text(&q3,2); |
| 700 | const char *zNew = db_column_text(&q3,3); |
| 701 | const char *zOldName = db_column_text(&q3, 4); |
| 702 | append_file_change_line(zName, zOld, zNew, zOldName, diffFlags,pRe,mperm); |
| 703 | } |
| 704 | db_finalize(&q3); |
| 705 | } |
| 706 | append_diff_javascript(sideBySide); |
| 707 | style_footer(); |
| 708 | } |
| 709 | |
| 710 |