[Pkg-owncloud-commits] [php-sabre-vobject] 26/38: reject vcards in icalendar splitter

David Prévot taffit at moszumanska.debian.org
Tue Sep 23 03:10:23 UTC 2014


This is an automated email from the git hooks/post-receive script.

taffit pushed a commit to branch upstream
in repository php-sabre-vobject.

commit 1884a45e66d204cbd92e31db04a294466a86b489
Author: Dominik Tobschall <dominik at fruux.com>
Date:   Fri Sep 19 10:13:28 2014 +0200

    reject vcards in icalendar splitter
---
 lib/Splitter/ICalendar.php               |  4 ++++
 tests/VObject/Splitter/ICalendarTest.php | 19 +++++++++++++++++++
 2 files changed, 23 insertions(+)

diff --git a/lib/Splitter/ICalendar.php b/lib/Splitter/ICalendar.php
index 5e7f367..1a01982 100644
--- a/lib/Splitter/ICalendar.php
+++ b/lib/Splitter/ICalendar.php
@@ -50,6 +50,10 @@ class ICalendar implements SplitterInterface {
         $vtimezones = array();
         $components = array();
 
+        if (!$data instanceof VObject\Component\VCalendar) {
+            throw new \InvalidArgumentException('The supplied input is no VCALENDAR.');
+        }
+
         foreach($data->children() as $component) {
             if (!$component instanceof VObject\Component) {
                 continue;
diff --git a/tests/VObject/Splitter/ICalendarTest.php b/tests/VObject/Splitter/ICalendarTest.php
index 411a40e..e0d2431 100644
--- a/tests/VObject/Splitter/ICalendarTest.php
+++ b/tests/VObject/Splitter/ICalendarTest.php
@@ -43,6 +43,25 @@ EOT;
         $this->assertEquals(array(), VObject\Reader::read($return)->validate());
     }
 
+    /**
+     * @expectedException InvalidArgumentException
+     */
+    function testICalendarImportWrongType() {
+
+        $data = <<<EOT
+BEGIN:VCARD
+UID:foo1
+END:VCARD
+BEGIN:VCARD
+UID:foo2
+END:VCARD
+EOT;
+        $tempFile = $this->createStream($data);
+
+        $objects = new ICalendar($tempFile);
+
+    }
+
     function testICalendarImportEndOfData() {
         $data = <<<EOT
 BEGIN:VCALENDAR

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-owncloud/php-sabre-vobject.git



More information about the Pkg-owncloud-commits mailing list