| 215 | } |
| 216 | |
| 217 | void ParcelReader::readParcelStructure() { |
| 218 | // special for binder::Status |
| 219 | if (varType == "class android::binder::Status") { |
| 220 | parcelReaderWriter->exceptionCode = |
| 221 | parcelReaderWriter->reply->readExceptionCode(); |
| 222 | parcelReaderWriter->storeValue("mException", (int)0); |
| 223 | FUZZER_LOGD("Exception code %d.", parcelReaderWriter->exceptionCode); |
| 224 | } else { |
| 225 | StructureType structureType(parcelReaderWriter, varName, varType); |
| 226 | if (variable.isMember("have_parcelable") && |
| 227 | variable["have_parcelable"].asInt() == 1) { |
| 228 | FUZZER_LOGD( |
| 229 | "This parcel related struct is deserialized by writeParcelable."); |
| 230 | int32_t present = parcelReaderWriter->reply->readInt32(); |
| 231 | FUZZER_LOGD("present: %d.", present); |
| 232 | } |
| 233 | structureType.read(); |
| 234 | } |
| 235 | } |
| 236 | void ParcelReader::readFlattenableStructure() { |
| 237 | StructureType structureType(parcelReaderWriter, varName, varType); |
| 238 | structureType.readFlattenable(); |
nothing calls this directly
no test coverage detected