diff options
author | mrjive <mrjive@mrjive.it> | 2018-01-16 11:45:01 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-01-16 11:45:01 +0100 |
commit | e81949bb095448881ce83605a50454d0c3c40782 (patch) | |
tree | bd15059a020152b5dc59c265e22a27251efe0de4 /vendor/sabre/vobject/lib/Component.php | |
parent | b4f8f4df7bc5cc8a74240506cd536224cb31e114 (diff) | |
parent | 9aadcb0bd40a8f773dc164f7dadc8c238fff9954 (diff) | |
download | volse-hubzilla-e81949bb095448881ce83605a50454d0c3c40782.tar.gz volse-hubzilla-e81949bb095448881ce83605a50454d0c3c40782.tar.bz2 volse-hubzilla-e81949bb095448881ce83605a50454d0c3c40782.zip |
Merge pull request #7 from redmatrix/dev
Dev
Diffstat (limited to 'vendor/sabre/vobject/lib/Component.php')
-rw-r--r-- | vendor/sabre/vobject/lib/Component.php | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/vendor/sabre/vobject/lib/Component.php b/vendor/sabre/vobject/lib/Component.php index 9a10ed3f8..ac87a10ec 100644 --- a/vendor/sabre/vobject/lib/Component.php +++ b/vendor/sabre/vobject/lib/Component.php @@ -662,8 +662,23 @@ class Component extends Node { break; case '?' : if (isset($propertyCounters[$propName]) && $propertyCounters[$propName] > 1) { + $level = 3; + + // We try to repair the same property appearing multiple times with the exact same value + // by removing the duplicates and keeping only one property + if ($options & self::REPAIR) { + $properties = array_unique($this->select($propName), SORT_REGULAR); + + if (count($properties) === 1) { + $this->remove($propName); + $this->add($properties[0]); + + $level = 1; + } + } + $messages[] = [ - 'level' => 3, + 'level' => $level, 'message' => $propName . ' MUST NOT appear more than once in a ' . $this->name . ' component', 'node' => $this, ]; |