Skip to content

Commit 7cfc61f

Browse files
committed
fix: RpcResult.result must check per-call error not client->lastError
1 parent df1514c commit 7cfc61f

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

src/bridge.h

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -41,17 +41,15 @@ class RpcResult {
4141

4242
while(true) {
4343
if (k_mutex_lock(read_mutex, K_MSEC(10)) == 0 ) {
44-
if (client->get_response(msg_id_wait, result)) {
45-
error.code = client->lastError.code;
46-
error.traceback = client->lastError.traceback;
44+
if (client->get_response(msg_id_wait, result, error)) {
4745
k_mutex_unlock(read_mutex);
4846
break;
49-
} else if (client->lastError.code == PARSING_ERR) {
50-
error.code = client->lastError.code;
51-
error.traceback = client->lastError.traceback;
47+
} else if (error.code != NO_ERR) {
48+
k_mutex_unlock(read_mutex);
5249
k_mutex_lock(write_mutex, K_FOREVER);
5350
client->notify(BRIDGE_ERROR, error.traceback);
5451
k_mutex_unlock(write_mutex);
52+
break;
5553
}
5654
k_mutex_unlock(read_mutex);
5755
k_msleep(1);

0 commit comments

Comments
 (0)