summaryrefslogtreecommitdiffstats
path: root/core/java/android/nfc/tech
diff options
context:
space:
mode:
authorMartijn Coenen <maco@google.com>2011-11-28 10:43:14 -0800
committerMartijn Coenen <maco@google.com>2011-12-15 10:28:52 -0800
commit23fc93a7c1e340e79642d3d0bf4b4658c8645c8e (patch)
treeb37362b1384711692be2e7a913ef271842b78ae1 /core/java/android/nfc/tech
parentda7923ac2932769e6d64508376a449c9dcd2889e (diff)
downloadframeworks_base-23fc93a7c1e340e79642d3d0bf4b4658c8645c8e.zip
frameworks_base-23fc93a7c1e340e79642d3d0bf4b4658c8645c8e.tar.gz
frameworks_base-23fc93a7c1e340e79642d3d0bf4b4658c8645c8e.tar.bz2
Fix NPE on mock NDEF tech operations.
Change-Id: Ib67bd03b6275fdb86a5d6dedc6c7e4fed07ef8b0
Diffstat (limited to 'core/java/android/nfc/tech')
-rw-r--r--core/java/android/nfc/tech/Ndef.java12
1 files changed, 12 insertions, 0 deletions
diff --git a/core/java/android/nfc/tech/Ndef.java b/core/java/android/nfc/tech/Ndef.java
index b266bb6..226e079 100644
--- a/core/java/android/nfc/tech/Ndef.java
+++ b/core/java/android/nfc/tech/Ndef.java
@@ -259,6 +259,9 @@ public final class Ndef extends BasicTagTechnology {
try {
INfcTag tagService = mTag.getTagService();
+ if (tagService == null) {
+ throw new IOException("Mock tags don't support this operation.");
+ }
int serviceHandle = mTag.getServiceHandle();
if (tagService.isNdef(serviceHandle)) {
NdefMessage msg = tagService.ndefRead(serviceHandle);
@@ -303,6 +306,9 @@ public final class Ndef extends BasicTagTechnology {
try {
INfcTag tagService = mTag.getTagService();
+ if (tagService == null) {
+ throw new IOException("Mock tags don't support this operation.");
+ }
int serviceHandle = mTag.getServiceHandle();
if (tagService.isNdef(serviceHandle)) {
int errorCode = tagService.ndefWrite(serviceHandle, msg);
@@ -335,6 +341,9 @@ public final class Ndef extends BasicTagTechnology {
*/
public boolean canMakeReadOnly() {
INfcTag tagService = mTag.getTagService();
+ if (tagService == null) {
+ return false;
+ }
try {
return tagService.canMakeReadOnly(mNdefType);
} catch (RemoteException e) {
@@ -366,6 +375,9 @@ public final class Ndef extends BasicTagTechnology {
try {
INfcTag tagService = mTag.getTagService();
+ if (tagService == null) {
+ return false;
+ }
if (tagService.isNdef(mTag.getServiceHandle())) {
int errorCode = tagService.ndefMakeReadOnly(mTag.getServiceHandle());
switch (errorCode) {