potential nfc bug fix

This commit is contained in:
2026-05-29 18:58:35 +05:00
parent 0efe833e40
commit cc15ab1c6c
@@ -28,7 +28,7 @@ class BmlHostCardEmulatorService : HostApduService() {
INS_SELECT -> handleSelect(apdu) INS_SELECT -> handleSelect(apdu)
INS_GPO -> handleGpo() INS_GPO -> handleGpo()
INS_READ -> handleReadRecord() INS_READ -> handleReadRecord()
else -> SW_UNKNOWN_ERROR else -> SW_INS_NOT_SUPPORTED
} }
} }
@@ -141,7 +141,7 @@ class BmlHostCardEmulatorService : HostApduService() {
val data: ByteArray? val data: ByteArray?
init { init {
if (raw.size < 4) { if (raw.size < 5) {
isError = true; ins = -1; data = null isError = true; ins = -1; data = null
} else { } else {
isError = false isError = false
@@ -166,8 +166,9 @@ class BmlHostCardEmulatorService : HostApduService() {
0x32,0x50,0x41,0x59,0x2E,0x53,0x59,0x53,0x2E,0x44,0x44,0x46,0x30,0x31 0x32,0x50,0x41,0x59,0x2E,0x53,0x59,0x53,0x2E,0x44,0x44,0x46,0x30,0x31
) )
private const val SW_OK_HEX = "9000" private const val SW_OK_HEX = "9000"
private val SW_UNKNOWN_ERROR = byteArrayOf(0x6F.toByte(), 0x00.toByte()) private val SW_UNKNOWN_ERROR = byteArrayOf(0x6F.toByte(), 0x00.toByte())
private val SW_INS_NOT_SUPPORTED = byteArrayOf(0x6D.toByte(), 0x00.toByte())
@Volatile var activeToken: BmlWalletToken? = null @Volatile var activeToken: BmlWalletToken? = null
@Volatile var onTransactionComplete: ((success: Boolean) -> Unit)? = null @Volatile var onTransactionComplete: ((success: Boolean) -> Unit)? = null