Commit Diff
- Commit:
24d38cef5adff900bea2484235762678ac1c5234
- From:
- Andrey Saranchin <Andrey22102001@gmail.com>
- Via:
- Vladimir Davydov <vdavydov.dev@gmail.com>
- Date:
- Message:
- memtx: do not pass NULL to memcpy when creating gap item in MVCC According to the C standard, passing `NULL` to `memcpy` is UB, even if it copies nothing (number of bytes to copy is 0). The commit fixes such situation in memtx MVCC. Closes tarantool/security#129 NO_TEST=fix UB NO_CHANGELOG=fix UB NO_DOC=fix UB
- Actions:
- Patch | Tree
--- src/box/memtx_tx.c +++ src/box/memtx_tx.c @@ -3117,7 +3117,8 @@ memtx_tx_nearby_gap_item_new(struct txn *txn, enum ite item->key = memtx_tx_xregion_alloc(txn, item->key_len, MEMTX_TX_ALLOC_TRACKER); } - memcpy((char *)item->key, key, item->key_len); + if (item->key != NULL) + memcpy((char *)item->key, key, item->key_len); return item; }