From 79354f2394cf44ebb160bb49a01c66cb688edc4f Mon Sep 17 00:00:00 2001 From: Nanosonde <2073569+nanosonde@users.noreply.github.com> Date: Thu, 16 Jul 2020 20:15:43 +0200 Subject: [PATCH] save work --- src/knx/router_object.cpp | 6 ++++-- src/knx/table_object.cpp | 4 ++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/knx/router_object.cpp b/src/knx/router_object.cpp index 4214d1e..5122b90 100644 --- a/src/knx/router_object.cpp +++ b/src/knx/router_object.cpp @@ -41,15 +41,17 @@ void RouterObject::initialize(uint8_t objIndex, DptMedium mediumType, bool useHo new DataProperty( PID_MEDIUM, false, PDT_ENUM8, 1, ReadLv3 | WriteLv0, (uint8_t) mediumType ), }; + uint8_t fixesPropertiesCount = sizeof(fixedProperties) / sizeof(Property*); - size_t allPropertiesCount = sizeof(fixedProperties) / sizeof(Property*); + size_t allPropertiesCount = fixesPropertiesCount; allPropertiesCount += useHopCount ? 1 : 0; allPropertiesCount += useTable ? 1 : 0; allPropertiesCount += (mediumType == DptMedium::KNX_RF) ? 1 : 0; Property* allProperties[allPropertiesCount]; + memcpy(&allProperties[0], &fixedProperties[0], sizeof(fixedProperties)); - uint8_t i = 0; + uint8_t i = fixesPropertiesCount; if (useHopCount) { diff --git a/src/knx/table_object.cpp b/src/knx/table_object.cpp index 96ea8d6..b866650 100644 --- a/src/knx/table_object.cpp +++ b/src/knx/table_object.cpp @@ -280,8 +280,8 @@ void TableObject::initializeProperties(size_t propertiesSize, Property** propert uint8_t allPropertiesCount = propertyCount + ownPropertiesCount; Property* allProperties[allPropertiesCount]; - memcpy(allProperties, properties, propertiesSize); - memcpy(allProperties + propertiesSize, ownProperties, sizeof(ownProperties)); + memcpy(&allProperties[0], properties, propertiesSize); + memcpy(&allProperties[propertyCount], ownProperties, sizeof(ownProperties)); InterfaceObject::initializeProperties(sizeof(allProperties), allProperties); }