Skip to content

Commit f3693a9

Browse files
Address review comments
1 parent ef5a7f9 commit f3693a9

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

src/app/clusters/thread-network-directory-server/DefaultThreadNetworkDirectoryStorage.cpp

+7-4
Original file line numberDiff line numberDiff line change
@@ -118,14 +118,17 @@ CHIP_ERROR DefaultThreadNetworkDirectoryStorage::RemoveNetwork(const ExtendedPan
118118
VerifyOrReturnError(FindNetwork(exPanId, index), CHIP_ERROR_NOT_FOUND);
119119

120120
// Move subsequent elements down to fill the deleted slot
121-
index_t subsequent = --mCount - index;
122-
auto * element = &mExtendedPanIds[index];
123-
memmove(element, element + 1, subsequent * sizeof(*element));
121+
static_assert(std::is_trivially_copyable_v<ExtendedPanId>);
122+
index_t subsequentCount = mCount - (index + 1);
123+
auto * element = &mExtendedPanIds[index];
124+
memmove(element, element + 1, subsequentCount * sizeof(*element));
125+
mCount--;
126+
124127
CHIP_ERROR err = StoreIndex();
125128
if (err != CHIP_NO_ERROR)
126129
{
127130
// Roll back the change to our in-memory state
128-
memmove(element + 1, element, subsequent * sizeof(*element));
131+
memmove(element + 1, element, subsequentCount * sizeof(*element));
129132
mExtendedPanIds[index] = exPanId;
130133
mCount++;
131134
return err;

0 commit comments

Comments
 (0)