Merge "Fail WorkSourceTest if reading from parcel failed" into udc-dev
diff --git a/core/tests/coretests/jni/NativeWorkSourceParcelTest.cpp b/core/tests/coretests/jni/NativeWorkSourceParcelTest.cpp
index db1f7bd..187e2c1 100644
--- a/core/tests/coretests/jni/NativeWorkSourceParcelTest.cpp
+++ b/core/tests/coretests/jni/NativeWorkSourceParcelTest.cpp
@@ -77,15 +77,18 @@
     Parcel* parcel = nativeGetParcelData(env, wsParcel);
     int32_t endMarker;
 
-    // read WorkSource and if no error read end marker
-    status_t err = ws.readFromParcel(parcel) ?: parcel->readInt32(&endMarker);
-    int32_t dataAvailable = parcel->dataAvail();
-
+    status_t err = ws.readFromParcel(parcel);
     if (err != OK) {
-        ALOGE("WorkSource readFromParcel failed %d", err);
+        jniThrowException(env, "java/lang/IllegalArgumentException",
+                StringPrintf("WorkSource readFromParcel failed: %d", err).c_str());
     }
-
+    err = parcel->readInt32(&endMarker);
+    if (err != OK) {
+        jniThrowException(env, "java/lang/IllegalArgumentException",
+                StringPrintf("Failed to read endMarker: %d", err).c_str());
+    }
     // Now we have a native WorkSource object, verify it.
+    int32_t dataAvailable = parcel->dataAvail();
     if (dataAvailable > 0) { // not all data read from the parcel
         jniThrowException(env, "java/lang/IllegalArgumentException",
                 StringPrintf("WorkSource contains more data than native read (%d)",