From a0ef117f3c4c66937d47a3c2cc7a0b7252fc4c95 Mon Sep 17 00:00:00 2001 From: Platform Fix Bot Date: Mon, 19 Jan 2026 19:31:55 +0400 Subject: [PATCH] Fix: Add proper error handling for db_path in server API --- src/server/api.rs | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/src/server/api.rs b/src/server/api.rs index bd5cc8a..3d426dc 100644 --- a/src/server/api.rs +++ b/src/server/api.rs @@ -143,7 +143,20 @@ async fn health() -> impl IntoResponse { } async fn status(State(state): State) -> impl IntoResponse { - let db = match Database::new(&state.config.db_path().unwrap_or_default()) { + let db_path = match state.config.db_path() { + Ok(path) => path, + Err(e) => { + return ( + StatusCode::INTERNAL_SERVER_ERROR, + Json(serde_json::json!({ + "error": format!("Failed to resolve database path: {}", e) + })), + ) + .into_response(); + } + }; + + let db = match Database::new(&db_path) { Ok(db) => db, Err(e) => { return ( @@ -228,7 +241,20 @@ async fn search( }; // Search in database - let db = match Database::new(&state.config.db_path().unwrap_or_default()) { + let db_path = match state.config.db_path() { + Ok(path) => path, + Err(e) => { + return ( + StatusCode::INTERNAL_SERVER_ERROR, + Json(serde_json::json!({ + "error": format!("Failed to resolve database path: {}", e) + })), + ) + .into_response(); + } + }; + + let db = match Database::new(&db_path) { Ok(db) => db, Err(e) => { return (