Commit 08bf61c6 authored by Sebastian Kummer's avatar Sebastian Kummer

Merge pull request #6 in ZP/z-push from bugfix/ZP-640-sync-object-comparison-should-not to develop

* commit 'e070d653':
  First check if neither object has the array property set, and if that is the case log it at debug level and continue with the comparison of other properties.
parents c550648b e070d653
...@@ -129,8 +129,13 @@ abstract class SyncObject extends Streamer { ...@@ -129,8 +129,13 @@ abstract class SyncObject extends Streamer {
$val = $v[self::STREAMER_VAR]; $val = $v[self::STREAMER_VAR];
// array of values? // array of values?
if (isset($v[self::STREAMER_ARRAY])) { if (isset($v[self::STREAMER_ARRAY])) {
// seek for differences in the arrays // if neither array is created then don't fail the comparison
if (is_array($this->$val) && is_array($odo->$val)) { if (!isset($this->$val) && !isset($odo->$val)) {
ZLog::Write(LOGLEVEL_DEBUG, sprintf("SyncObject->equals() array '%s' is NOT SET in either object", $val));
continue;
}
elseif (is_array($this->$val) && is_array($odo->$val)) {
// if both arrays exist then seek for differences in the arrays
if (count(array_diff($this->$val, $odo->$val)) + count(array_diff($odo->$val, $this->$val)) > 0) { if (count(array_diff($this->$val, $odo->$val)) + count(array_diff($odo->$val, $this->$val)) > 0) {
ZLog::Write(LOGLEVEL_DEBUG, sprintf("SyncObject->equals() items in array '%s' differ", $val)); ZLog::Write(LOGLEVEL_DEBUG, sprintf("SyncObject->equals() items in array '%s' differ", $val));
return false; return false;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment