summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYaroslav Mamykin (GitHub) <ymamykin@luxoft.com>2019-10-25 13:00:05 +0300
committerYarik <ymamykin@gmail.com>2019-11-15 15:19:30 +0200
commitcd25bf031aa4a417e09336ff130265f6f4d74798 (patch)
treec2cc9371e66d2061b32ce7c4f09d02a85f640609
parented7d030f9ac4f637ecddfe8e0264d105e8a4bf53 (diff)
downloadsdl_core-cd25bf031aa4a417e09336ff130265f6f4d74798.tar.gz
fixup! Fix versioning appliance for vehicle data
-rw-r--r--src/components/smart_objects/src/object_schema_item.cc15
1 files changed, 12 insertions, 3 deletions
diff --git a/src/components/smart_objects/src/object_schema_item.cc b/src/components/smart_objects/src/object_schema_item.cc
index 5990815905..437e0c708f 100644
--- a/src/components/smart_objects/src/object_schema_item.cc
+++ b/src/components/smart_objects/src/object_schema_item.cc
@@ -82,8 +82,15 @@ SMember::SMember(const ISchemaItemPtr SchemaItem,
bool SMember::CheckHistoryFieldVersion(
const utils::SemanticVersion& MessageVersion) const {
if (MessageVersion.isValid()) {
- if (mUntil != boost::none && (MessageVersion >= mUntil.get())) {
- return false; // Msg version newer than `until` field
+ if (mSince != boost::none) {
+ if (MessageVersion < mSince.get()) {
+ return false;
+ }
+ }
+ if (mUntil != boost::none) {
+ if (MessageVersion >= mUntil.get()) {
+ return false; // Msg version newer than `until` field
+ }
}
}
@@ -281,7 +288,9 @@ const SMember* CObjectSchemaItem::GetCorrectMember(
}
// Return member as default
- return nullptr;
+ return (member.mSince != boost::none && member.mSince.get() > kModuleVersion)
+ ? &member
+ : nullptr;
}
} // namespace ns_smart_objects