diff options
author | Francois Gaffie <francois.gaffie@intel.com> | 2014-04-07 13:46:05 +0200 |
---|---|---|
committer | Mattijs Korpershoek <mattijsx.korpershoek@intel.com> | 2014-06-24 11:51:35 +0200 |
commit | 8ab7293fc32d078f558985b938fa5c71c2b0404b (patch) | |
tree | 4123046de6b599d346e339d5c6126744d63a499e /parameter/ArrayParameter.cpp | |
parent | 01c7495e66caea59165316bc025a69cce1383311 (diff) | |
download | external_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.cpp | 34 |
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> |