@@ -740,7 +740,7 @@ bson_iter_binary (const bson_iter_t *iter, /* IN */
740740 * subtype = (bson_subtype_t ) * (iter -> raw + iter -> d2 );
741741
742742 if (binary ) {
743- memcpy (binary_len , (iter -> raw + iter -> d1 ), 4 );
743+ memcpy (binary_len , (iter -> raw + iter -> d1 ), sizeof ( * binary_len ) );
744744 * binary_len = BSON_UINT32_FROM_LE (* binary_len );
745745 * binary = iter -> raw + iter -> d3 ;
746746
@@ -1207,11 +1207,11 @@ bson_iter_codewscope (const bson_iter_t *iter, /* IN */
12071207
12081208 if (ITER_TYPE (iter ) == BSON_TYPE_CODEWSCOPE ) {
12091209 if (length ) {
1210- memcpy (& len , iter -> raw + iter -> d2 , 4 );
1210+ memcpy (& len , iter -> raw + iter -> d2 , sizeof ( len ) );
12111211 * length = BSON_UINT32_FROM_LE (len ) - 1 ;
12121212 }
12131213
1214- memcpy (& len , iter -> raw + iter -> d4 , 4 );
1214+ memcpy (& len , iter -> raw + iter -> d4 , sizeof ( len ) );
12151215 * scope_len = BSON_UINT32_FROM_LE (len );
12161216 * scope = iter -> raw + iter -> d4 ;
12171217 return (const char * )(iter -> raw + iter -> d3 );
@@ -1552,7 +1552,7 @@ bson_iter_document (const bson_iter_t *iter, /* IN */
15521552 * document_len = 0 ;
15531553
15541554 if (ITER_TYPE (iter ) == BSON_TYPE_DOCUMENT ) {
1555- memcpy (document_len , (iter -> raw + iter -> d1 ), 4 );
1555+ memcpy (document_len , (iter -> raw + iter -> d1 ), sizeof ( * document_len ) );
15561556 * document_len = BSON_UINT32_FROM_LE (* document_len );
15571557 * document = (iter -> raw + iter -> d1 );
15581558 }
@@ -1614,7 +1614,7 @@ bson_iter_array (const bson_iter_t *iter, /* IN */
16141614 * array_len = 0 ;
16151615
16161616 if (ITER_TYPE (iter ) == BSON_TYPE_ARRAY ) {
1617- memcpy (array_len , (iter -> raw + iter -> d1 ), 4 );
1617+ memcpy (array_len , (iter -> raw + iter -> d1 ), sizeof ( * array_len ) );
16181618 * array_len = BSON_UINT32_FROM_LE (* array_len );
16191619 * array = (iter -> raw + iter -> d1 );
16201620 }
0 commit comments