summary refs log tree commit diff
path: root/search.c
diff options
context:
space:
mode:
authorJune McEnroe <june@causal.agency>2020-07-12 17:59:38 -0400
committerJune McEnroe <june@causal.agency>2020-07-12 17:59:38 -0400
commit9e64d621d90fdcb28a0c994645c0e9b1090542e0 (patch)
tree13ee2b724dbd33e4d2a30536faccbde6aa052dfc /search.c
parentHandle no search results (diff)
downloadscooper-9e64d621d90fdcb28a0c994645c0e9b1090542e0.tar.gz
scooper-9e64d621d90fdcb28a0c994645c0e9b1090542e0.zip
Handle search query errors
Diffstat (limited to 'search.c')
-rw-r--r--search.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/search.c b/search.c
index 07a8064..88c59a8 100644
--- a/search.c
+++ b/search.c
@@ -115,7 +115,14 @@ enum kcgi_err searchPage(struct kreq *req) {
 		error = htmlEvent(&html, scope, event);
 		if (error) return error;
 	}
-	if (result != SQLITE_DONE) errx(EX_SOFTWARE, "%s", sqlite3_errmsg(db));
+	if (result != SQLITE_DONE) {
+		return 0
+			|| khtml_attr(&html, KELEM_TR, KATTR_CLASS, "error", KATTR__MAX)
+			|| khtml_elem(&html, KELEM_TH)
+			|| khtml_puts(&html, sqlite3_errmsg(db))
+			|| htmlFooter(&html)
+			|| khtml_close(&html);
+	}
 
 	if (rows == eventsLimit) {
 		char *href = khttp_urlpartx(