entering maps and arrays returns the map / array item
diff --git a/src/qcbor_decode.c b/src/qcbor_decode.c
index 029e4e5..aee1581 100644
--- a/src/qcbor_decode.c
+++ b/src/qcbor_decode.c
@@ -2975,7 +2975,7 @@
 
    DecodeNesting_SetCurrentToBoundedLevel(&(pMe->nesting));
 
-   QCBORDecode_EnterBoundedMapOrArray(pMe, pSearch->uDataType);
+   QCBORDecode_EnterBoundedMapOrArray(pMe, pSearch->uDataType, NULL);
 }
 
 
@@ -3039,7 +3039,7 @@
 
 
 // Semi-private function
-void QCBORDecode_EnterBoundedMapOrArray(QCBORDecodeContext *pMe, uint8_t uType)
+void QCBORDecode_EnterBoundedMapOrArray(QCBORDecodeContext *pMe, uint8_t uType, QCBORItem *pItem)
 {
     QCBORError uErr;
 
@@ -3080,6 +3080,10 @@
    uErr = DecodeNesting_EnterBoundedMapOrArray(&(pMe->nesting), bIsEmpty,
                                                UsefulInputBuf_Tell(&(pMe->InBuf)));
 
+   if(pItem != NULL) {
+      *pItem = Item;
+   }
+
 Done:
    pMe->uLastError = (uint8_t)uErr;
 }