summaryrefslogtreecommitdiffstats
path: root/parameter/ArrayParameter.cpp
diff options
context:
space:
mode:
authorFrancois Gaffie <francois.gaffie@intel.com>2014-04-07 13:46:05 +0200
committerMattijs Korpershoek <mattijsx.korpershoek@intel.com>2014-06-24 11:51:35 +0200
commit8ab7293fc32d078f558985b938fa5c71c2b0404b (patch)
tree4123046de6b599d346e339d5c6126744d63a499e /parameter/ArrayParameter.cpp
parent01c7495e66caea59165316bc025a69cce1383311 (diff)
downloadexternal_parameter-framework-8ab7293fc32d078f558985b938fa5c71c2b0404b.zip
external_parameter-framework-8ab7293fc32d078f558985b938fa5c71c2b0404b.tar.gz
external_parameter-framework-8ab7293fc32d078f558985b938fa5c71c2b0404b.tar.bz2
Restore autosync of string parameter
BZ: 183857 Sync for String parameter accessed from parameter handle API does not work. This patch allows synchronisation for string parameter accessed from parameter handle APIs. Change-Id: If738402f4c0fcb0bb51bd2515e46f3ac36a361dd Signed-off-by: Francois Gaffie <francois.gaffie@intel.com> Signed-off-by: Mattijs Korpershoek <mattijsx.korpershoek@intel.com>
Diffstat (limited to 'parameter/ArrayParameter.cpp')
-rw-r--r--parameter/ArrayParameter.cpp34
1 files changed, 18 insertions, 16 deletions
diff --git a/parameter/ArrayParameter.cpp b/parameter/ArrayParameter.cpp
index dedb5da..47000a7 100644
--- a/parameter/ArrayParameter.cpp
+++ b/parameter/ArrayParameter.cpp
@@ -119,11 +119,10 @@ bool CArrayParameter::accessValue(CPathNavigator& pathNavigator, string& strValu
}
// Synchronize
- if (parameterAccessContext.getAutoSync() && !sync(parameterAccessContext)) {
+ if (!sync(parameterAccessContext)) {
// Append parameter path to error
parameterAccessContext.appendToError(" " + getPath());
-
return false;
}
} else {
@@ -326,28 +325,31 @@ void CArrayParameter::getValues(uint32_t uiBaseOffset, string& strValues, CParam
template <typename type>
bool CArrayParameter::accessValues(vector<type>& values, bool bSet, CParameterAccessContext& parameterAccessContext) const
{
- bool bSuccess;
-
if (bSet) {
- if (setValues(values, parameterAccessContext)) {
+ // Set Value
+ if (!setValues(values, parameterAccessContext)) {
- // Synchronize
- bSuccess = sync(parameterAccessContext);
- } else {
+ // Append parameter path to error
+ parameterAccessContext.appendToError(" " + getPath());
+ return false;
+ }
+ if (!sync(parameterAccessContext)) {
- bSuccess = false;
+ // Append parameter path to error
+ parameterAccessContext.appendToError(" " + getPath());
+ return false;
}
} else {
+ // Get Value
+ if (!getValues(values, parameterAccessContext)) {
- bSuccess = getValues(values, parameterAccessContext);
- }
- if (!bSuccess) {
-
- // Append parameter path to error
- parameterAccessContext.appendToError(" " + getPath());
+ // Append parameter path to error
+ parameterAccessContext.appendToError(" " + getPath());
+ return false;
+ }
}
- return bSuccess;
+ return true;
}
template <typename type>