Fixed connect() failure from technology->ndef->technology.
Suppose you have a MifareClassic tag with NDEF; the following scenario failed
MifareClassic.connect()/close() -> Ndef.connect()/close() -> MifareClassic.connect() .
This last connect fails because the service refuses to connect any technology
on the same handle, except for NDEF. This check was too strict - it was only
intended to catch connecting to a NfcA technology on an IsoDep tag, as libNFC does not
support this. This change always allows connecting a tech on the same handle, except
when you want to connect a non-IsoDep technology on a tag that does have the IsoDep
technology on the same handle - in which case it refuses. This
matches exactly what libnfc supports.
Change-Id: I64d552b3cd51beb36712676492f36d182c605748
1 file changed