소스 검색

logging and error handling

Eric Betts 2 년 전
부모
커밋
66d44fe06d
2개의 변경된 파일7개의 추가작업 그리고 1개의 파일을 삭제
  1. 5 1
      sam_api.c
  2. 2 0
      seader_worker.c

+ 5 - 1
sam_api.c

@@ -714,7 +714,11 @@ bool seader_process_success_response_i(
 
         processed = seader_worker_state_machine(seader, payload, online, spc);
     } else {
-        FURI_LOG_D(TAG, "Failed to decode APDU payload");
+        memset(display, 0, sizeof(display));
+        for(uint8_t i = 0; i < len; i++) {
+            snprintf(display + (i * 2), sizeof(display), "%02x", apdu[i]);
+        }
+        FURI_LOG_D(TAG, "Failed to decode APDU payload: [%s]", display);
     }
 
     ASN_STRUCT_FREE(asn_DEF_Payload, payload);

+ 2 - 0
seader_worker.c

@@ -242,6 +242,8 @@ void seader_worker_poller_conversation(Seader* seader, SeaderPollerContainer* sp
                 // no-op
             } else {
                 FURI_LOG_I(TAG, "Response false");
+                view_dispatcher_send_custom_event(
+                    seader->view_dispatcher, SeaderCustomEventWorkerExit);
                 seader_worker->stage = SeaderPollerEventTypeComplete;
             }
         }