Skip to content

Adding appointment into shared calendar fails #3801

@ekric

Description

@ekric

Steps to reproduce

  1. Share calendar with user (write access)
  2. Let the user the calendar is shared with create an appointment into the shared calendar
  3. The adding will fail, with an error message into the server log, defining both the users addresses in the user data doesn't solve the problem.

Expected behaviour

The appointment should be created into the shared calendar without error.

Actual behaviour

See above

Server configuration

Operating system: Ubuntu 16.04.2 LTS

Web server: nginx/1.10.0 (Ubuntu)

Database: 5.7.17-0ubuntu0.16.04.1 (Ubuntu)

PHP version: PHP 7.0.15-0ubuntu0.16.04.4

Nextcloud version: (see Nextcloud admin page) Nextcloud 11.0.2 (production)

Updated from an older Nextcloud/ownCloud or fresh install: Updated

Where did you install Nextcloud from: https://download.nextcloud.com/server/releases/nextcloud-11.0.2.zip

List of activated apps:
Enabled:

  • activity: 2.4.1
  • admin_audit: 1.1.0
  • calendar: 1.5.1
  • comments: 1.1.0
  • contacts: 1.5.3
  • dav: 1.1.1
  • direct_menu: 0.10.0
  • federatedfilesharing: 1.1.1
  • federation: 1.1.1
  • files: 1.6.1
  • files_pdfviewer: 1.0.1
  • files_sharing: 1.1.1
  • files_texteditor: 2.2
  • files_trashbin: 1.1.0
  • files_versions: 1.4.0
  • files_videoplayer: 1.0.0
  • firstrunwizard: 2.0
  • gallery: 16.0.0
  • logreader: 2.0.0
  • lookup_server_connector: 1.0.0
  • mail: 0.6.2
  • nextcloud_announcements: 1.0
  • notifications: 1.0.1
  • password_policy: 1.1.0
  • provisioning_api: 1.1.0
  • serverinfo: 1.1.1
  • sharebymail: 1.0.1
  • survey_client: 0.1.5
  • systemtags: 1.1.3
  • tasks: 0.9.5
  • templateeditor: 0.2
  • theming: 1.1.1
  • twofactor_backupcodes: 1.0.0
  • updatenotification: 1.1.1
  • workflowengine: 1.1.1
    Disabled:
  • encryption
  • external
  • files_accesscontrol
  • files_automatedtagging
  • files_external
  • files_retention
  • richdocuments
  • user_external
  • user_ldap
  • user_saml

The content of config/config.php:
{
"system": {
"instanceid": "ocaeb697abca",
"passwordsalt": "REMOVED SENSITIVE VALUE",
"datadirectory": "/srv/ncdata",
"dbtype": "mysql",
"version": "11.0.2.7",
"dbname": "nextcloud",
"dbhost": "localhost",
"dbtableprefix": "nc_",
"dbuser": "REMOVED SENSITIVE VALUE",
"dbpassword": "REMOVED SENSITIVE VALUE",
"installed": true,
"forcessl": true,
"theme": "",
"maintenance": false,
"trusted_domains": [...],
"share_folder": "/Shared",
"loglevel": 0,
"log_authfailip": true,
"log_rotate_size": "104857600",
"secret": "REMOVED SENSITIVE VALUE",
"mail_from_address": "sharing-noreply",
"mail_smtpmode": "smtp",
"mail_domain": "...",
"mail_smtphost": "localhost",
"mail_smtpport": "25",
"memcache.local": "\OC\Memcache\Redis",
"filelocking.enabled": "true",
"memcache.distributed": "\OC\Memcache\Redis",
"memcache.locking": "\OC\Memcache\Redis",
"redis": {
"host": "localhost",
"port": 6379,
"timeout": 0
},
"trashbin_retention_obligation": "auto",
"htaccess.RewriteBase": "/",
"updater.release.channel": "production",
"updater.secret": "REMOVED SENSITIVE VALUE"
}
}

Are you using external storage, if yes which one: /srv/ncdata

Are you using encryption: no

Are you using an external user-backend, if yes which one: no

Client configuration

Browser: none, iOS Calendar App

Operating system: iOS 10.2.1

Logs

Nextcloud log (data/nextcloud.log)

TypeError: Argument 3 passed to Sabre\CalDAV\Schedule\Plugin::processICalendarChange() must be of the type array, null given, called in /var/www/servers/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php on line 372
/var/www/servers/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Schedule/Plugin.php - line 372: Sabre\CalDAV\Schedule\Plugin->processICalendarChange(NULL, Object(Sabre\VObject\Component\VCalendar), NULL, Array, false)
[internal function] Sabre\CalDAV\Schedule\Plugin->calendarObjectChange(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response), Object(Sabre\VObject\Component\VCalendar), 'calendars/Ina/g...', false, true)
/var/www/servers/nextcloud/3rdparty/sabre/event/lib/EventEmitterTrait.php - line 105: call_user_func_array(Array, Array)
/var/www/servers/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Plugin.php - line 943: Sabre\Event\EventEmitter->emit('calendarObjectC...', Array)
/var/www/servers/nextcloud/3rdparty/sabre/dav/lib/CalDAV/Plugin.php - line 801: Sabre\CalDAV\Plugin->validateICalendar('BEGIN VCALENDAR...', 'calendars/Ina/g...', false, Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response), true)
[internal function] Sabre\CalDAV\Plugin->beforeCreateFile('calendars/Ina/g...', 'BEGIN VCALENDAR...', Object(OCA\DAV\CalDAV\Calendar), false)
/var/www/servers/nextcloud/3rdparty/sabre/event/lib/EventEmitterTrait.php - line 105: call_user_func_array(Array, Array)
/var/www/servers/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 1070: Sabre\Event\EventEmitter->emit('beforeCreateFil...', Array)
/var/www/servers/nextcloud/3rdparty/sabre/dav/lib/DAV/CorePlugin.php - line 525: Sabre\DAV\Server->createFile('calendars/Ina/g...', 'BEGIN VCALENDAR...', NULL)
[internal function] Sabre\DAV\CorePlugin->httpPut(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
/var/www/servers/nextcloud/3rdparty/sabre/event/lib/EventEmitterTrait.php - line 105: call_user_func_array(Array, Array)
/var/www/servers/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 479: Sabre\Event\EventEmitter->emit('method PUT', Array)
/var/www/servers/nextcloud/3rdparty/sabre/dav/lib/DAV/Server.php - line 254: Sabre\DAV\Server->invokeMethod(Object(Sabre\HTTP\Request), Object(Sabre\HTTP\Response))
/var/www/servers/nextcloud/apps/dav/appinfo/v1/caldav.php - line 91: Sabre\DAV\Server->exec()
/var/www/servers/nextcloud/remote.php - line 165: require_once('/var/www/server...')
{main}

Browser log

Doesn't happen in the browser client.

Workaround

if ($addresses == null) {
$addresses = [];
}

$this->processICalendarChange($oldObj, $vCal, $addresses, [], $modified);

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions