Fossil SCM

Relax <tt>isSnippetMark()</tt> so that almost arbitrary search terms are highlighted. This change is preliminary and [forum:/forumpost/042e179e0c25b8|needs further analysis].

george 2021-08-16 00:11 trunk
Commit 6b37b55f759b911d8f9a64db6c1dc95a4d31492631e534b313d0b00e4e27ff24
1 file changed +1 -1
+1 -1
--- src/search.c
+++ src/search.c
@@ -977,11 +977,11 @@
977977
*/
978978
static int isSnippetMark(const char *z){
979979
int n;
980980
if( strncmp(z,"<mark>",6)!=0 ) return 0;
981981
n = 6;
982
- while( fossil_isalnum(z[n]) ) n++;
982
+ while( z[n]!=0 && z[n]!='<' ) n++;
983983
if( strncmp(&z[n],"</mark>",7)!=0 ) return 0;
984984
return n+7;
985985
}
986986
987987
/*
988988
--- src/search.c
+++ src/search.c
@@ -977,11 +977,11 @@
977 */
978 static int isSnippetMark(const char *z){
979 int n;
980 if( strncmp(z,"<mark>",6)!=0 ) return 0;
981 n = 6;
982 while( fossil_isalnum(z[n]) ) n++;
983 if( strncmp(&z[n],"</mark>",7)!=0 ) return 0;
984 return n+7;
985 }
986
987 /*
988
--- src/search.c
+++ src/search.c
@@ -977,11 +977,11 @@
977 */
978 static int isSnippetMark(const char *z){
979 int n;
980 if( strncmp(z,"<mark>",6)!=0 ) return 0;
981 n = 6;
982 while( z[n]!=0 && z[n]!='<' ) n++;
983 if( strncmp(&z[n],"</mark>",7)!=0 ) return 0;
984 return n+7;
985 }
986
987 /*
988

Keyboard Shortcuts

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