mirror of
https://github.com/espressif/openthread.git
synced 2026-07-30 07:37:46 +00:00
[operational-dataset] fix bug in getting the channel mask (#2591)
This commit is contained in:
@@ -104,7 +104,7 @@ otError Dataset::Print(otOperationalDataset &aDataset)
|
||||
|
||||
if (aDataset.mIsChannelMaskPage0Set)
|
||||
{
|
||||
sServer->OutputFormat("Channel Mask Page 0: %x\r\n", aDataset.mChannelMaskPage0);
|
||||
sServer->OutputFormat("Channel Mask Page 0: %08x\r\n", aDataset.mChannelMaskPage0);
|
||||
}
|
||||
|
||||
if (aDataset.mIsDelaySet)
|
||||
|
||||
@@ -138,9 +138,8 @@ void Dataset::Get(otOperationalDataset &aDataset) const
|
||||
{
|
||||
if (reinterpret_cast<const ChannelMaskEntry *>(entry)->GetChannelPage() == 0)
|
||||
{
|
||||
uint8_t i = sizeof(ChannelMaskEntry);
|
||||
aDataset.mChannelMaskPage0 = static_cast<uint32_t>(entry[i] | (entry[i + 1] << 8) |
|
||||
(entry[i + 2] << 16) | (entry[i + 3] << 24));
|
||||
const ChannelMask0Tlv *tlv = static_cast<const ChannelMask0Tlv *>(cur);
|
||||
aDataset.mChannelMaskPage0 = tlv->GetMask();
|
||||
aDataset.mIsChannelMaskPage0Set = true;
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -139,9 +139,8 @@ otError DatasetLocal::Get(otOperationalDataset &aDataset) const
|
||||
{
|
||||
if (reinterpret_cast<const ChannelMaskEntry *>(entry)->GetChannelPage() == 0)
|
||||
{
|
||||
uint8_t i = sizeof(ChannelMaskEntry);
|
||||
aDataset.mChannelMaskPage0 = static_cast<uint32_t>(entry[i] | (entry[i + 1] << 8) |
|
||||
(entry[i + 2] << 16) | (entry[i + 3] << 24));
|
||||
const ChannelMask0Tlv *tlv = static_cast<const ChannelMask0Tlv *>(cur);
|
||||
aDataset.mChannelMaskPage0 = tlv->GetMask();
|
||||
aDataset.mIsChannelMaskPage0Set = true;
|
||||
break;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user