Fossil SCM

When searching documents, always use the file name as the title in the results. In general, always prefer to use the name as the title, when non-NULL.

mistachkin 2015-04-01 02:45 UTC trunk
Commit 2d3dc9b00d736ed8d84ac909fbdebfd0d5eeeb21
1 file changed +6 -7
+6 -7
--- src/search.c
+++ src/search.c
@@ -450,19 +450,18 @@
450450
static void search_title_sqlfunc(
451451
sqlite3_context *context,
452452
int argc,
453453
sqlite3_value **argv
454454
){
455
- const char *zType = (const char*)sqlite3_value_text(argv[0]);
456
- int rid = sqlite3_value_int(argv[1]);
457455
const char *zName = (const char*)sqlite3_value_text(argv[2]);
458
- int nHdr;
459
- char *z = search_stext_cached(zType[0], rid, zName, &nHdr);
460
- if( nHdr || zType[0]!='d' ){
461
- sqlite3_result_text(context, z, nHdr, SQLITE_TRANSIENT);
456
+ if( zName ){
457
+ sqlite3_result_text(context, zName, -1, SQLITE_TRANSIENT);
462458
}else{
463
- sqlite3_result_value(context, argv[2]);
459
+ const char *zType = (const char*)sqlite3_value_text(argv[0]);
460
+ int nHdr = 0, rid = sqlite3_value_int(argv[1]);
461
+ char *z = search_stext_cached(zType[0], rid, zName, &nHdr);
462
+ sqlite3_result_text(context, z, nHdr, SQLITE_TRANSIENT);
464463
}
465464
}
466465
static void search_body_sqlfunc(
467466
sqlite3_context *context,
468467
int argc,
469468
--- src/search.c
+++ src/search.c
@@ -450,19 +450,18 @@
450 static void search_title_sqlfunc(
451 sqlite3_context *context,
452 int argc,
453 sqlite3_value **argv
454 ){
455 const char *zType = (const char*)sqlite3_value_text(argv[0]);
456 int rid = sqlite3_value_int(argv[1]);
457 const char *zName = (const char*)sqlite3_value_text(argv[2]);
458 int nHdr;
459 char *z = search_stext_cached(zType[0], rid, zName, &nHdr);
460 if( nHdr || zType[0]!='d' ){
461 sqlite3_result_text(context, z, nHdr, SQLITE_TRANSIENT);
462 }else{
463 sqlite3_result_value(context, argv[2]);
 
 
 
464 }
465 }
466 static void search_body_sqlfunc(
467 sqlite3_context *context,
468 int argc,
469
--- src/search.c
+++ src/search.c
@@ -450,19 +450,18 @@
450 static void search_title_sqlfunc(
451 sqlite3_context *context,
452 int argc,
453 sqlite3_value **argv
454 ){
 
 
455 const char *zName = (const char*)sqlite3_value_text(argv[2]);
456 if( zName ){
457 sqlite3_result_text(context, zName, -1, SQLITE_TRANSIENT);
 
 
458 }else{
459 const char *zType = (const char*)sqlite3_value_text(argv[0]);
460 int nHdr = 0, rid = sqlite3_value_int(argv[1]);
461 char *z = search_stext_cached(zType[0], rid, zName, &nHdr);
462 sqlite3_result_text(context, z, nHdr, SQLITE_TRANSIENT);
463 }
464 }
465 static void search_body_sqlfunc(
466 sqlite3_context *context,
467 int argc,
468

Keyboard Shortcuts

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