From 53586b9d009aba63fac6d08535dd811dd8cedf40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EA=B9=80=EC=84=A0=EC=9A=B0?= Date: Fri, 24 Jan 2025 15:06:10 +0900 Subject: [PATCH] Break the loop when step() returns Err --- bindings/java/rs_src/limbo_statement.rs | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/bindings/java/rs_src/limbo_statement.rs b/bindings/java/rs_src/limbo_statement.rs index 4277b599e..7de4b2c19 100644 --- a/bindings/java/rs_src/limbo_statement.rs +++ b/bindings/java/rs_src/limbo_statement.rs @@ -53,18 +53,17 @@ pub extern "system" fn Java_org_github_tursodatabase_core_LimboStatement_step<'l Ok(stmt) => stmt, Err(e) => { set_err_msg_and_throw_exception(&mut env, obj, LIMBO_ETC, e.to_string()); - - return JObject::null(); + return to_limbo_step_result(&mut env, STEP_RESULT_ID_ERROR, None); } }; loop { - match stmt - .stmt - .step() - .map_err(|_e| to_limbo_step_result(&mut env, STEP_RESULT_ID_ERROR, None)) - .unwrap() - { + let step_result = match stmt.stmt.step() { + Ok(result) => result, + Err(_) => return to_limbo_step_result(&mut env, STEP_RESULT_ID_ERROR, None), + }; + + match step_result { StepResult::Row(row) => { return match row_to_obj_array(&mut env, &row) { Ok(row) => to_limbo_step_result(&mut env, STEP_RESULT_ID_ROW, Some(row)),