From 889fd77cdad6bed78063904575c36bd815a72b9e Mon Sep 17 00:00:00 2001 From: sshropshire <58225613+sshropshire@users.noreply.github.com> Date: Fri, 7 Jun 2024 12:57:16 -0500 Subject: [PATCH] Initialize PayPalAccountNonce Values into Empty Strings Instead of `null` (#1028) * Replace initial null values with empty strings in PayPalAccountNonce parse method. * Replace initial null values with empty strings in PayPalNativeCheckoutAccountNonce parse method. * Update CHANGELOG. --- CHANGELOG.md | 7 +++++++ .../com/braintreepayments/api/PayPalAccountNonce.java | 8 ++++---- .../api/PayPalNativeCheckoutAccountNonce.java | 8 ++++---- 3 files changed, 15 insertions(+), 8 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 3dbd68aafb..0d9769f963 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Braintree Android SDK Release Notes +## unreleased + +* PayPal + * Fix `PayPalAccountNonce` Null Pointer Exception by ensuring that all `@NonNull` values are initialized with a non-null value. +* PayPalNativeCheckout + * Fix `PayPalNativeCheckoutAccountNonce` Null Pointer Exception by ensuring that all `@NonNull` values are initialized with a non-null value. + ## 4.47.0 (2024-06-06) * BraintreeCore diff --git a/PayPal/src/main/java/com/braintreepayments/api/PayPalAccountNonce.java b/PayPal/src/main/java/com/braintreepayments/api/PayPalAccountNonce.java index f40190127a..a320ae82c7 100644 --- a/PayPal/src/main/java/com/braintreepayments/api/PayPalAccountNonce.java +++ b/PayPal/src/main/java/com/braintreepayments/api/PayPalAccountNonce.java @@ -76,10 +76,10 @@ static PayPalAccountNonce fromJSON(JSONObject inputJson) throws JSONException { PayPalCreditFinancing payPalCreditFinancing = null; PostalAddress shippingAddress; PostalAddress billingAddress; - String firstName = null; - String lastName = null; - String phone = null; - String payerId = null; + String firstName = ""; + String lastName = ""; + String phone = ""; + String payerId = ""; try { if (details.has(CREDIT_FINANCING_KEY)) { JSONObject creditFinancing = details.getJSONObject(CREDIT_FINANCING_KEY); diff --git a/PayPalNativeCheckout/src/main/java/com/braintreepayments/api/PayPalNativeCheckoutAccountNonce.java b/PayPalNativeCheckout/src/main/java/com/braintreepayments/api/PayPalNativeCheckoutAccountNonce.java index 0a37567934..01c5cd3cfa 100644 --- a/PayPalNativeCheckout/src/main/java/com/braintreepayments/api/PayPalNativeCheckoutAccountNonce.java +++ b/PayPalNativeCheckout/src/main/java/com/braintreepayments/api/PayPalNativeCheckoutAccountNonce.java @@ -76,10 +76,10 @@ static PayPalNativeCheckoutAccountNonce fromJSON(JSONObject inputJson) throws JS PayPalNativeCheckoutCreditFinancing payPalCreditFinancing = null; PostalAddress shippingAddress; PostalAddress billingAddress; - String firstName = null; - String lastName = null; - String phone = null; - String payerId = null; + String firstName = ""; + String lastName = ""; + String phone = ""; + String payerId = ""; try { if (details.has(CREDIT_FINANCING_KEY)) { JSONObject creditFinancing = details.getJSONObject(CREDIT_FINANCING_KEY);