[operational-dataset] fix bug in getting the channel mask (#2591)

This commit is contained in:
Jonathan Hui
2018-03-01 20:50:59 +00:00
committed by GitHub
parent ca791f1ae8
commit aabebb7c1e
3 changed files with 5 additions and 7 deletions
+1 -1
View File
@@ -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)
+2 -3
View File
@@ -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;
}
+2 -3
View File
@@ -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;
}