Fossil SCM

Bug fix in the search-snippet HTML sanitizer.

drh 2015-02-03 15:07 trunk
Commit 23d659de2fbd11c11fe0a208717d4dbab1a6db71
1 file changed +2 -2
+2 -2
--- src/search.c
+++ src/search.c
@@ -599,11 +599,11 @@
599599
*/
600600
static void search_fullscan(
601601
const char *zPattern, /* The query pattern */
602602
unsigned int srchFlags /* What to search over */
603603
){
604
- search_init(zPattern, "<b>", "</b>", " ... ",
604
+ search_init(zPattern, "<mark>", "</mark>", " ... ",
605605
SRCHFLG_STATIC|SRCHFLG_HTML);
606606
if( (srchFlags & SRCH_DOC)!=0 ){
607607
char *zDocGlob = db_get("doc-glob","");
608608
char *zDocBr = db_get("doc-branch","trunk");
609609
if( zDocGlob && zDocGlob[0] && zDocBr && zDocBr[0] ){
@@ -798,11 +798,11 @@
798798
static char *cleanSnippet(const char *zSnip){
799799
int i;
800800
int n = 0;
801801
char *z;
802802
for(i=0; zSnip[i]; i++) if( zSnip[i]=='<' ) n++;
803
- z = fossil_malloc( i+n+1 );
803
+ z = fossil_malloc( i+n*4+1 );
804804
i = 0;
805805
while( zSnip[0] ){
806806
if( zSnip[0]=='<' ){
807807
n = isSnippetMark(zSnip);
808808
if( n ){
809809
--- src/search.c
+++ src/search.c
@@ -599,11 +599,11 @@
599 */
600 static void search_fullscan(
601 const char *zPattern, /* The query pattern */
602 unsigned int srchFlags /* What to search over */
603 ){
604 search_init(zPattern, "<b>", "</b>", " ... ",
605 SRCHFLG_STATIC|SRCHFLG_HTML);
606 if( (srchFlags & SRCH_DOC)!=0 ){
607 char *zDocGlob = db_get("doc-glob","");
608 char *zDocBr = db_get("doc-branch","trunk");
609 if( zDocGlob && zDocGlob[0] && zDocBr && zDocBr[0] ){
@@ -798,11 +798,11 @@
798 static char *cleanSnippet(const char *zSnip){
799 int i;
800 int n = 0;
801 char *z;
802 for(i=0; zSnip[i]; i++) if( zSnip[i]=='<' ) n++;
803 z = fossil_malloc( i+n+1 );
804 i = 0;
805 while( zSnip[0] ){
806 if( zSnip[0]=='<' ){
807 n = isSnippetMark(zSnip);
808 if( n ){
809
--- src/search.c
+++ src/search.c
@@ -599,11 +599,11 @@
599 */
600 static void search_fullscan(
601 const char *zPattern, /* The query pattern */
602 unsigned int srchFlags /* What to search over */
603 ){
604 search_init(zPattern, "<mark>", "</mark>", " ... ",
605 SRCHFLG_STATIC|SRCHFLG_HTML);
606 if( (srchFlags & SRCH_DOC)!=0 ){
607 char *zDocGlob = db_get("doc-glob","");
608 char *zDocBr = db_get("doc-branch","trunk");
609 if( zDocGlob && zDocGlob[0] && zDocBr && zDocBr[0] ){
@@ -798,11 +798,11 @@
798 static char *cleanSnippet(const char *zSnip){
799 int i;
800 int n = 0;
801 char *z;
802 for(i=0; zSnip[i]; i++) if( zSnip[i]=='<' ) n++;
803 z = fossil_malloc( i+n*4+1 );
804 i = 0;
805 while( zSnip[0] ){
806 if( zSnip[0]=='<' ){
807 n = isSnippetMark(zSnip);
808 if( n ){
809

Keyboard Shortcuts

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