[misc] use sqlitepp.client in lnav.events.cc

This commit is contained in:
Timothy Stack 2022-07-21 23:46:45 -07:00
parent e8f0b1e6b8
commit 317f2d32cf
2 changed files with 15 additions and 16 deletions

View File

@ -29,6 +29,8 @@
#include "lnav.events.hh"
#include "sqlitepp.client.hh"
namespace lnav {
namespace events {
@ -140,23 +142,18 @@ details::publish(sqlite3* db, const std::string& content)
INSERT INTO lnav_events (content) VALUES (?)
)";
auto_mem<sqlite3_stmt> stmt(sqlite3_finalize);
auto prep_res = prepare_stmt(db, INSERT_SQL, content);
if (prep_res.isErr()) {
log_error("unable to prepare event statement: %s",
prep_res.unwrapErr().c_str());
return;
}
if (sqlite3_prepare_v2(db, INSERT_SQL, -1, stmt.out(), nullptr)
!= SQLITE_OK) {
log_error("unable to prepare statement: %s", sqlite3_errmsg(db));
auto exec_res = prep_res.unwrap().execute();
if (exec_res.isErr()) {
log_error("failed to execute insert: %s", exec_res.unwrapErr().c_str());
return;
}
if (sqlite3_bind_text(
stmt.in(), 1, content.c_str(), content.size(), SQLITE_TRANSIENT)
!= SQLITE_OK)
{
log_error("unable to bind parameter: %s", sqlite3_errmsg(db));
return;
}
if (sqlite3_step(stmt) != SQLITE_DONE) {
log_error("failed to execute insert: %s", sqlite3_errmsg(db));
}
}
} // namespace events

View File

@ -702,8 +702,10 @@ rl_callback_int(readline_curses* rc, bool is_alt)
auto msg = result.unwrap();
if (!msg.empty()) {
prompt = lnav::console::user_message::info(
attr_line_t("SQL Result: ").append(msg))
prompt = lnav::console::user_message::ok(
attr_line_t("SQL Result: ")
.append(attr_line_t::from_ansi_str(
msg.c_str())))
.to_attr_line();
if (dls.dls_rows.size() > 1) {
ensure_view(&lnav_data.ld_views[LNV_DB]);