You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Jiri Daněk (JIRA)" <ji...@apache.org> on 2018/01/24 16:45:00 UTC

[jira] [Created] (ARTEMIS-1634) Coverity: Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN) in QueueControlImpl.java

Jiri Daněk created ARTEMIS-1634:
-----------------------------------

             Summary: Coverity: Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN) in QueueControlImpl.java
                 Key: ARTEMIS-1634
                 URL: https://issues.apache.org/jira/browse/ARTEMIS-1634
             Project: ActiveMQ Artemis
          Issue Type: Bug
          Components: Broker
    Affects Versions: 2.5.0
            Reporter: Jiri Daněk


{noformat}
968   @Override
 969   public CompositeData[] browse(int page, int pageSize) throws Exception {
 970      String filter = null;
 971      checkStarted();
 972
 973      clearIO();
 974      try {
 975         long index = 0;
    CID 1464349 (#1 of 2): Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN) [select issue]
 976         long start = (page - 1) * pageSize;
    CID 1464349 (#2 of 2): Unintentional integer overflow (OVERFLOW_BEFORE_WIDEN)overflow_before_widen: Potentially overflowing expression page * pageSize with type int (32 bits, signed) is evaluated using 32-bit arithmetic, and then used in a context that expects an expression of type long (64 bits, signed).
    To avoid overflow, cast either page or pageSize to type long rather than casting the result of the potential overflow.
 977         long end = Math.min((long)(page * pageSize), queue.getMessageCount());
{noformat}



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)