rootvector2 opened a new pull request, #704:
URL: https://github.com/apache/commons-collections/pull/704

   `MapUtils.getIntValue(Map, K, Function)` narrows the resolved `Integer` 
through `.byteValue()`, so any value outside signed-byte range comes back 
truncated: a map entry of `1000` returns `-24`, and a `defaultFunction` 
yielding `Integer.MAX_VALUE` returns `-1`. This is the same defect fixed under 
COLLECTIONS-874 for the sibling `getLongValue(Map, K, Function)`, which moved 
to `.longValue()`; the `int` overload kept `.byteValue()`. Found while checking 
that each `getXxxValue(Map, K, Function)` matches its declared return type.
   
   Use `.intValue()` like every other numeric overload. `testGetIntValue` only 
drove the `Function` variant with `key -> 0`, which is unaffected by the 
narrowing, so the gap stayed invisible; the added assertions pin a map value 
and a default-function value that fall outside byte range.
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to