1
mirror of https://github.com/flipperdevices/flipperzero-firmware.git synced 2025-12-12 20:59:50 +04:00

Returning fix for reading PWD locked MFUL (#4295)

Co-authored-by: hedger <hedger@users.noreply.github.com>
This commit is contained in:
Mykhailo Shevchuk
2025-11-06 21:54:50 +02:00
committed by GitHub
parent f4c92dcd76
commit 7518dc73c2

View File

@@ -566,17 +566,13 @@ static NfcCommand mf_ultralight_poller_handler_read_pages(MfUltralightPoller* in
instance->error = mf_ultralight_poller_read_page(instance, start_page, &data); instance->error = mf_ultralight_poller_read_page(instance, start_page, &data);
} }
// Regression review
const uint8_t read_cnt = instance->data->type == MfUltralightTypeMfulC ? 1 : 4;
if(instance->error == MfUltralightErrorNone) { if(instance->error == MfUltralightErrorNone) {
for(size_t i = 0; i < read_cnt; i++) { if(start_page < instance->pages_total) {
if(start_page + i < instance->pages_total) { FURI_LOG_D(TAG, "Read page %d success", start_page);
FURI_LOG_D(TAG, "Read page %d success", start_page + i); instance->data->page[start_page] = data.page[0];
instance->data->page[start_page + i] = data.page[i];
instance->pages_read++; instance->pages_read++;
instance->data->pages_read = instance->pages_read; instance->data->pages_read = instance->pages_read;
} }
}
if(instance->pages_read == instance->pages_total) { if(instance->pages_read == instance->pages_total) {
instance->state = MfUltralightPollerStateReadCounters; instance->state = MfUltralightPollerStateReadCounters;