Bug 57915

Summary: Dec2Hex returns wrong value when the cell contains long values
Product: POI Reporter: artiomsevciuc
Component: SS CommonAssignee: POI Developers List <dev>
Status: RESOLVED FIXED    
Severity: major    
Priority: P2    
Version: 3.11-FINAL   
Target Milestone: ---   
Hardware: PC   
OS: All   

Description artiomsevciuc 2015-05-11 11:42:23 UTC
I have a column which contains a formula:
="341575"&"3004"&RIGHT(0&"1",2)
The result of the formula is : "341575300401". 
After that the result is used by the dec2hex and the result for that formula should be "4F87797531". But it is not working as needed and the result value is "7FFFFFFF".
After some investigation I found that in the line 115 from Dec2Hex class we have following call:
hex = Integer.toHexString(number1.intValue());
That is wrong, I guess that it is needed to use:
Integer.toHexString(number1.longValue());
In this case it will cover integer and long numbers.
Comment 1 Dominik Stadler 2015-09-17 19:24:03 UTC
Fixed via r1703672, thanks for the hint of how it can be fixed, this is now verified via some more unit-tests.