| @@ -570,7 +570,7 @@ void picopass_worker_elite_dict_attack(PicopassWorker* picopass_worker) { | ||||
|                 picopass_worker->callback(PicopassWorkerEventFail, picopass_worker->context); | ||||
|                 break; | ||||
|             } | ||||
|             picopass_worker->callback(PicopassWorkerEventSuccess, picopass_worker->context); | ||||
|             picopass_worker->callback(PicopassWorkerEventAborted, picopass_worker->context); | ||||
|             break; | ||||
|         } | ||||
|  | ||||
| @@ -596,6 +596,9 @@ int32_t picopass_worker_task(void* context) { | ||||
|         picopass_worker_write_key(picopass_worker); | ||||
|     } else if(picopass_worker->state == PicopassWorkerStateEliteDictAttack) { | ||||
|         picopass_worker_elite_dict_attack(picopass_worker); | ||||
|     } else if(picopass_worker->state == PicopassWorkerStateStop) { | ||||
|         FURI_LOG_D(TAG, "Worker state stop"); | ||||
|         // no-op | ||||
|     } else { | ||||
|         FURI_LOG_W(TAG, "Unknown state %d", picopass_worker->state); | ||||
|     } | ||||
|   | ||||
| @@ -116,8 +116,7 @@ bool picopass_scene_elite_dict_attack_on_event(void* context, SceneManagerEvent | ||||
|     uint32_t state = | ||||
|         scene_manager_get_scene_state(picopass->scene_manager, PicopassSceneEliteDictAttack); | ||||
|     if(event.type == SceneManagerEventTypeCustom) { | ||||
|         if(event.event == PicopassWorkerEventSuccess || | ||||
|            event.event == PicopassWorkerEventAborted) { | ||||
|         if(event.event == PicopassWorkerEventSuccess) { | ||||
|             if(state == DictAttackStateUserDictInProgress || | ||||
|                state == DictAttackStateStandardDictInProgress) { | ||||
|                 picopass_worker_stop(picopass->worker); | ||||
| @@ -127,6 +126,9 @@ bool picopass_scene_elite_dict_attack_on_event(void* context, SceneManagerEvent | ||||
|                 scene_manager_next_scene(picopass->scene_manager, PicopassSceneReadCardSuccess); | ||||
|                 consumed = true; | ||||
|             } | ||||
|         } else if(event.event == PicopassWorkerEventAborted) { | ||||
|             scene_manager_next_scene(picopass->scene_manager, PicopassSceneReadCardSuccess); | ||||
|             consumed = true; | ||||
|         } else if(event.event == PicopassWorkerEventCardDetected) { | ||||
|             dict_attack_set_card_detected(picopass->dict_attack); | ||||
|             consumed = true; | ||||
|   | ||||
		Reference in New Issue
	
	Block a user