libril: Fix freeing of strings for roaming protocol flag
Change-Id: Id6150885203a64733bffeb7ce6dc4e91fab305df
diff --git a/ril/libril/ril_service.cpp b/ril/libril/ril_service.cpp
index 37bd2a6..acad18d 100644
--- a/ril/libril/ril_service.cpp
+++ b/ril/libril/ril_service.cpp
@@ -1943,7 +1943,7 @@
#ifdef NEEDS_ROAMING_PROTOCOL_FIELD
if (!copyHidlStringToRil(&iaa.roamingProtocol, dataProfileInfo.roamingProtocol, pRI)) {
- memsetAndFreeStrings(4, iaa.apn, iaa.protocol, iaa.username, iaa.roamingProtocol);
+ memsetAndFreeStrings(4, iaa.apn, iaa.protocol, iaa.username, iaa.password);
return Void();
}
#endif
@@ -1954,7 +1954,12 @@
CALL_ONREQUEST(RIL_REQUEST_SET_INITIAL_ATTACH_APN, &iaa, sizeof(iaa), pRI, mSlotId);
+#ifdef NEEDS_ROAMING_PROTOCOL_FIELD
+ memsetAndFreeStrings(5, iaa.apn, iaa.protocol, iaa.username, iaa.password,
+ iaa.roamingProtocol);
+#else
memsetAndFreeStrings(4, iaa.apn, iaa.protocol, iaa.username, iaa.password);
+#endif
} else {
RIL_InitialAttachApn_v15 iaa = {};