Author: jleroux
Date: Fri Nov 10 15:34:58 2017
New Revision: 1814875
URL: http://svn.apache.org/viewvc?rev=1814875&view=rev
Log:
"Applied fix from trunk framework for revision: 1814873"
------------------------------------------------------------------------
r1814873 | jleroux | 2017-11-10 16:34:27 +0100 (ven., 10 nov. 2017) | 11 lines
Fixed: ShippingEvents.getShipGroupEstimate() method gives untraceable null
pointer exception for BigDecimal comparison
(OFBIZ-9975)
The compareTo() method of BigDecimal is not null safe.
When totalAllowance value is null it throws null pointer exception which may be
difficult to trace sometimes.
Valid null pointer checks should be there before using compareTo() if the
variable may have a null value in any of the case.
Thanks: Aditya
------------------------------------------------------------------------
Modified:
ofbiz/branches/release16.11/ (props changed)
ofbiz/branches/release16.11/applications/order/src/main/java/org/apache/ofbiz/order/shoppingcart/shipping/ShippingEvents.java
Propchange: ofbiz/branches/release16.11/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Fri Nov 10 15:34:58 2017
@@ -10,5 +10,5 @@
/ofbiz/branches/json-integration-refactoring:1634077-1635900
/ofbiz/branches/multitenant20100310:921280-927264
/ofbiz/branches/release13.07:1547657
-/ofbiz/ofbiz-framework/trunk:1783202,1783388,1784549,1784558,1784708,1785882,1785925,1786079,1786214,1786525,1787047,1787133,1787176,1787535,1787906-1787911,1787949,1789665,1789863,1789874,1790396,1790810,1791277,1791288,1791342,1791346,1791490,1791496,1791625,1791634,1791791,1791804,1792270,1792272,1792275,1792432,1792609,1792638,1794008,1794132,1796047,1796262,1797733,1798668,1798682,1798796,1798803,1798808,1799088,1799183,1799327,1799417,1799687,1799767,1799793,1799859,1800250,1800780,1800832,1800853,1801094,1801262-1801263,1801273-1801274,1801303,1801318-1801319,1801336,1801340,1801346,1801359,1801742,1802657,1802766,1803525,1804656,1804843,1804847,1804859,1805143,1805558,1805880,1806036,1806220,1806266,1806269,1806951,1807597,1807890,1808834,1809399,1809429,1809594,1809741,1810102,1811794,1812387,1813600,1813617,1813647,1813833,1814277,1814319,1814349,1814501,1814591,1814642,1814644,1814709
+/ofbiz/ofbiz-framework/trunk:1783202,1783388,1784549,1784558,1784708,1785882,1785925,1786079,1786214,1786525,1787047,1787133,1787176,1787535,1787906-1787911,1787949,1789665,1789863,1789874,1790396,1790810,1791277,1791288,1791342,1791346,1791490,1791496,1791625,1791634,1791791,1791804,1792270,1792272,1792275,1792432,1792609,1792638,1794008,1794132,1796047,1796262,1797733,1798668,1798682,1798796,1798803,1798808,1799088,1799183,1799327,1799417,1799687,1799767,1799793,1799859,1800250,1800780,1800832,1800853,1801094,1801262-1801263,1801273-1801274,1801303,1801318-1801319,1801336,1801340,1801346,1801359,1801742,1802657,1802766,1803525,1804656,1804843,1804847,1804859,1805143,1805558,1805880,1806036,1806220,1806266,1806269,1806951,1807597,1807890,1808834,1809399,1809429,1809594,1809741,1810102,1811794,1812387,1813600,1813617,1813647,1813833,1814277,1814319,1814349,1814501,1814591,1814642,1814644,1814709,1814873
/ofbiz/trunk:1770481,1770490,1770540,1771440,1771448,1771516,1771935,1772346,1772880,1774772,1775441,1779724,1780659,1781109,1781125,1781979,1782498,1782520
Modified:
ofbiz/branches/release16.11/applications/order/src/main/java/org/apache/ofbiz/order/shoppingcart/shipping/ShippingEvents.java
URL:
http://svn.apache.org/viewvc/ofbiz/branches/release16.11/applications/order/src/main/java/org/apache/ofbiz/order/shoppingcart/shipping/ShippingEvents.java?rev=1814875&r1=1814874&r2=1814875&view=diff
==============================================================================
---
ofbiz/branches/release16.11/applications/order/src/main/java/org/apache/ofbiz/order/shoppingcart/shipping/ShippingEvents.java
(original)
+++
ofbiz/branches/release16.11/applications/order/src/main/java/org/apache/ofbiz/order/shoppingcart/shipping/ShippingEvents.java
Fri Nov 10 15:34:58 2017
@@ -253,7 +253,7 @@ public class ShippingEvents {
// Calculate the allowance price(Already included in Product's
default/list price)
// using shippingAllowance percent and deduct it from Actual Shipping
Cost.
- if (BigDecimal.ZERO.compareTo(shippingTotal) < 0 &&
BigDecimal.ZERO.compareTo(totalAllowance) < 0) {
+ if (BigDecimal.ZERO.compareTo(shippingTotal) < 0 &&
UtilValidate.isNotEmpty(totalAllowance) &&
BigDecimal.ZERO.compareTo(totalAllowance) < 0) {
BigDecimal shippingAllowancePercent =
storeShipMethod.getBigDecimal("allowancePercent") != null ?
storeShipMethod.getBigDecimal("allowancePercent") : BigDecimal.ZERO;
totalAllowance =
totalAllowance.multiply(shippingAllowancePercent.divide(BigDecimal.valueOf(100)));
shippingTotal = shippingTotal.subtract(totalAllowance);