final clean up
diff --git a/src/qcbor_decode.c b/src/qcbor_decode.c
index 0107a5b..0d689d8 100644
--- a/src/qcbor_decode.c
+++ b/src/qcbor_decode.c
@@ -1037,7 +1037,7 @@
 static QCBORError
 QCBOR_Private_DecodeArrayOrMap(const uint8_t  uMode,
                                const int      nMajorType,
-                               uint64_t uItemCount,
+                               uint64_t       uItemCount,
                                const int      nAdditionalInfo,
                                QCBORItem     *pDecodedItem)
 {
@@ -1073,17 +1073,18 @@
       /* ----- Definite-length array/map ----- */
       if(uItemCount > (nMajorType == QCBOR_TYPE_MAP ? QCBOR_MAX_ITEMS_IN_MAP : QCBOR_MAX_ITEMS_IN_ARRAY)) {
          uReturn = QCBOR_ERR_ARRAY_DECODE_TOO_LONG;
-      }
 
+      } else {
 #ifndef QCBOR_DISABLE_NON_INTEGER_LABELS
-      if(uMode == QCBOR_DECODE_MODE_MAP_AS_ARRAY && nMajorType == QCBOR_TYPE_MAP) {
-         /* ------ Map as array ------ */
-         uItemCount *= 2;
-      }
+         if(uMode == QCBOR_DECODE_MODE_MAP_AS_ARRAY && nMajorType == QCBOR_TYPE_MAP) {
+            /* ------ Map as array ------ */
+            uItemCount *= 2;
+         }
 #endif /* ! QCBOR_DISABLE_NON_INTEGER_LABELS */
 
-      /* cast OK because of check above */
-      pDecodedItem->val.uCount = (uint16_t)uItemCount;
+         /* cast OK because of check above */
+         pDecodedItem->val.uCount = (uint16_t)uItemCount;
+      }
    }
 
    return uReturn;