Commit Graph

10404 Commits

Author SHA1 Message Date
Joas Schilling e5a7e3124a Add a repair step that checks for group membership on shares 2015-10-29 09:26:26 +01:00
Joas Schilling ca2fd30073 Remove shares where the parent does not exist anymore 2015-10-29 09:26:26 +01:00
Jenkins for ownCloud 527ef76dd6 [tx-robot] updated from transifex 2015-10-29 01:55:45 -04:00
Thomas Müller 8ad3df9b9e Merge pull request #19182 from cweiske/support-bzip2
Fix #19181: Support .bz2 app archives
2015-10-28 14:05:11 +01:00
Thomas Müller 49e30abc82 Merge pull request #20102 from owncloud/fix_subadmin
Make \OC\SubAdmin php-5.4 compatible
2015-10-28 10:51:38 +01:00
Roeland Jago Douma 07fe1df8c1 Make \OC\SubAdmin php-5.4 compatible
* Also close some cursors while we are at it
2015-10-28 09:09:16 +01:00
Jenkins for ownCloud d74811fcc8 [tx-robot] updated from transifex 2015-10-28 01:55:29 -04:00
Jenkins for ownCloud 0875a4a18f [tx-robot] updated from transifex 2015-10-27 01:55:44 -04:00
Thomas Müller 40ba8d267f Merge pull request #19837 from owncloud/always-enabled-apps
Store list of apps which cannot be disabled in shipped.json
2015-10-26 17:14:29 +01:00
Vincent Petry b900782513 Also adjust storage_mtime of target after rename
Some storages like Dropbox change their mtime on rename...
2015-10-26 15:41:23 +01:00
Lukas Reschke 8f09d5b67c Update license headers 2015-10-26 14:04:01 +01:00
Thomas Müller 7e3b4754f6 Merge pull request #20031 from owncloud/remove-dead-code
Remove dead code from autoloader
2015-10-26 11:07:56 +01:00
Thomas Müller d4d954b2d9 Merge pull request #19982 from owncloud/fix-link-sharing-regression-master
Ensure the password is only hashed in case it's changed on the client…
2015-10-26 10:57:31 +01:00
Thomas Müller 2038b2ec34 Fail hard if shipped.json is missing 2015-10-26 09:53:04 +01:00
Thomas Müller 5a5bcccd0d Don't show apps which are always enabled in the app manager 2015-10-26 09:53:04 +01:00
Thomas Müller 6fc59f85b6 Store list of apps which cannot be disabled in shipped.json 2015-10-26 09:53:04 +01:00
Lukas Reschke ff1271c7f3 Remove dead code
Those variables are never written to. Thus this is dead code which should be removed.
2015-10-25 23:47:53 +01:00
Lukas Reschke 13e817e901 Throw exception on `getPath` if file does not exist
Currently the `getPath` methods returned `NULL` in case when a file with the specified ID does not exist. This however mandates that developers are checking for the `NULL` case and if they do not the door for bugs with all kind of impact is widely opened.

This is especially harmful if used in context with Views where the final result is limited based on the result of `getPath`, if `getPath` returns `NULL` PHP type juggles this to an empty string resulting in all possible kind of bugs.

While one could argue that this is a misusage of the API the fact is that it is very often misused and an exception will trigger an immediate stop of execution as well as log this behaviour and show a pretty error page.

I also adjusted some usages where I believe that we need to catch these errors, in most cases this is though simply an error that should hard-fail.
2015-10-25 17:58:21 +01:00
Jenkins for ownCloud eb10e3abc2 [tx-robot] updated from transifex 2015-10-25 01:55:04 -04:00
Robin Appelman 9d7138aa50 Dont lock /$user/files 2015-10-23 14:59:16 +02:00
Roeland Jago Douma 9071e756a1 Fix for broken ajax/share.php endpoint
Even more code mess :(
All tests pass again. But I'm really not happy with this endpoint.
2015-10-23 09:24:03 +02:00
Volker Fröhlich 711e1235ea Expose syslog tag in the configuration 2015-10-22 17:42:55 +02:00
Thomas Müller 4f5ff9c105 Ensure the password is only hashed in case it's changed on the client - fixes #19950 2015-10-22 17:32:40 +02:00
Thomas Müller e471600834 Merge pull request #19890 from owncloud/db-keep-shared-locks
Keep shared locks until the end of the request so we can reuse them
2015-10-22 10:43:00 +02:00
Lukas Reschke 23e22c52b0 Use IRequest's `getScriptName` functionality instead of $_SERVER['SCRIPT_NAME'] 2015-10-21 17:33:49 +02:00
Lukas Reschke 8133d46620 Remove dependency on ICrypto + use XOR 2015-10-21 17:33:41 +02:00
Thomas Müller f7f2a160dd Merge pull request #19918 from owncloud/send-begin-message
Update: state which step we are going to start and warn if it might b…
2015-10-21 14:52:19 +02:00
Thomas Müller 1060be0886 Merge pull request #19927 from owncloud/install-shipped-apps-on-upgrade
Install new shipped apps on upgrade
2015-10-21 14:43:27 +02:00
Roeland Jago Douma c515628ebe Legacy OC_SubAdmin is now just a wrapper 2015-10-21 11:32:38 +02:00
Roeland Jago Douma 0e9ab13943 New \OC\SubAdmin class
* DI
* Tests
* moved OC_SubAdmin to legacy
* Added to private OC\GroupManager
2015-10-21 11:32:38 +02:00
Thomas Müller d8276af301 Install new shipped apps on upgrade -fixes #19925 2015-10-21 11:14:12 +02:00
Thomas Müller d0aeb268d6 Merge pull request #19883 from owncloud/provide-iappcontainer
Provide IAppContainer as dependency injection
2015-10-21 10:49:26 +02:00
Thomas Müller cf9b8fc182 Merge pull request #18184 from owncloud/ocs-merge-headers
Merge headers of ocs results
2015-10-21 10:36:37 +02:00
Robin Appelman f39c73c79c add phpdoc 2015-10-21 09:43:30 +02:00
Robin Appelman cc7bd53d17 Keep shared locks until the end of the request so we can reuse them 2015-10-21 09:43:30 +02:00
Joas Schilling 9200bbeaba Update: state which step we are going to start and warn if it might be slow 2015-10-21 09:17:38 +02:00
Jenkins for ownCloud 74f41349b7 [tx-robot] updated from transifex 2015-10-21 01:56:16 -04:00
Christian Weiske a543d20958 Fix #19181: Support .bz2 app archives
At first a bz2 handling in needs to be fixed; PEAR's Archive_Tar
otherwise gives the following error:
> Unsupported compression type "bz"
> Supported types are "gz", "bz2" and "lzma2"

After that we can whitelist the application/bz2 MIME type in the installer.
2015-10-20 21:56:24 +02:00
Thomas Müller 1a84c8e9d2 Merge pull request #19884 from owncloud/locking_exception
catch all exception if table doesn't exists
2015-10-20 13:44:00 +02:00
Thomas Müller 64dc222ce5 Merge pull request #19874 from owncloud/delete-cookie-instead-of-setting-value-to-empty
Delete cookie instead of emptying value
2015-10-20 12:47:46 +02:00
Björn Schießle 168c2055ba catch all exception if table doesn't exists 2015-10-20 11:34:08 +02:00
Thomas Müller 5752e3b3c0 Merge pull request #19666 from owncloud/fix_13002
Combine OCS API getUser method code into provisioning_api app
2015-10-20 11:10:39 +02:00
Morris Jobke a0743f12c6 Provide IAppContainer as dependency injection 2015-10-20 10:33:53 +02:00
Morris Jobke 5944b33d56 [OCI setup] remove static logger/config calls
* logger/config object are already injected - this only uses it
2015-10-20 08:53:57 +02:00
Jenkins for ownCloud dfd44942c6 [tx-robot] updated from transifex 2015-10-20 01:55:03 -04:00
Lukas Reschke 5588c5f262 Delete cookie instead of emptying value
PHP will handle session cookies with an empty values as an E_WARNING error. ([php/#68063](https://bugs.php.net/bug.php?id=68063))

ownCloud sets the cookie to an empty value in case the session expires, it however after this starts a new session. Due to potential race conditions this can in unlikely cases lead to the fact that the session never gets restarted and the user is left with an empty cookie. PHP tries then to use the empty cookie which makes the instance not usable.

To work around any race condition we now tell PHP to explicitly delete the value which can be done by using `null` as value, PHP will then send a cookie with the value "deleted". Also theepiration has been set to -1.
2015-10-19 19:54:12 +02:00
Jörn Friedrich Dreyer 2895c91291 Merge pull request #17641 from owncloud/fix_objectstore_rename
don't move files in cache twice, fixes renaming for objectstores
2015-10-19 17:18:57 +02:00
Robin Appelman 9c5337ca3e Merge pull request #19833 from owncloud/fix_view_rmdir
Removemount expects absolutePath
2015-10-19 16:22:42 +02:00
Thomas Müller 7fe7655070 The full name has to be tested if it's a dir - fixes #19854 2015-10-19 10:07:33 +02:00
Jenkins for ownCloud 008082ebad [tx-robot] updated from transifex 2015-10-19 01:55:02 -04:00
Jenkins for ownCloud 8d25528c49 [tx-robot] updated from transifex 2015-10-18 01:55:07 -04:00
Jenkins for ownCloud c378456137 [tx-robot] updated from transifex 2015-10-17 01:55:34 -04:00
Robin Appelman 0c6c36d0c5 fix objectstore files having create permissions 2015-10-16 21:41:51 +02:00
Robin Appelman e46741cf5d detect object homestorage in share code 2015-10-16 21:41:51 +02:00
Jörn Friedrich Dreyer aab226cef7 don't move files in cache twice, fixes renaming for objectstores 2015-10-16 21:41:51 +02:00
Thomas Müller 6cd1126dd1 Merge pull request #19843 from owncloud/an-app-is-identified-by-having-a-info.xml-app.php-should-not-be-mandatory
an-app-is-identified-by-having-a-info.xml-app.php-should-not-be-manda…
2015-10-16 21:28:55 +02:00
Roeland Jago Douma 8fdb12f8fb Check for error when resharing 2015-10-16 20:43:17 +02:00
Roeland Jago Douma 9e86d71cc5 When sharing with the owner show the path
The error message should contain the path that is being shared not the
numeric id.
2015-10-16 20:43:17 +02:00
Thomas Müller a2ec080427 an-app-is-identified-by-having-a-info.xml-app.php-should-not-be-mandatory 2015-10-16 17:25:22 +02:00
Roeland Jago Douma 3a14cfc295 Removemount expects absolutePath 2015-10-16 14:14:00 +02:00
Thomas Müller 2ff55560e2 Remove $ETagFunction - it was never used 2015-10-16 13:17:12 +02:00
Thomas Müller f2889dc6e4 Consolidate webdav code - move all to one app 2015-10-16 13:17:12 +02:00
Jenkins for ownCloud 7224e99ccd [tx-robot] updated from transifex 2015-10-16 01:55:03 -04:00
Bjoern Schiessle dd6cb67030 check if fopen was successful before continue 2015-10-15 16:27:38 +02:00
Bjoern Schiessle c7883b1769 only wrap source if fopen was successful 2015-10-15 16:27:38 +02:00
Morris Jobke d392ddab70 Remove ArrayParser because it is unused 2015-10-14 16:50:56 +02:00
Thomas Müller fbccdedb5c Merge pull request #19731 from owncloud/update-list-of-deprecated-methods
Update list of deprecated methods
2015-10-14 16:34:55 +02:00
Thomas Müller ba461b0c92 Merge pull request #19760 from owncloud/adding_occ_upgrade_text_note
Adding occ upgrade text note
2015-10-14 16:33:33 +02:00
Thomas Müller db4dae527c Merge pull request #19764 from owncloud/issue-19759-app-check-code-issue
Variables don't have a class, so we can't use toString() on it
2015-10-14 14:10:25 +02:00
Morris Jobke aa10825026 update deprecation message 2015-10-14 14:08:45 +02:00
Joas Schilling e2806b0ae8 Update list of deprecated methods 2015-10-14 14:08:45 +02:00
Joas Schilling 8379611dbe Variables don't have a class, so we can't use toString() on it 2015-10-14 13:16:58 +02:00
Thomas Müller 28d6da8158 Merge pull request #19738 from owncloud/proppatch-lastmodified
Fix mtime PROPPATCH to be "lastmodified" instead of "getlastmodified"
2015-10-14 12:49:33 +02:00
Thomas Müller 757f320531 Merge pull request #19580 from owncloud/issue-19399-remote-shares-case-sensitivity
Make sure that remote shares use the correct uid casing
2015-10-14 12:39:57 +02:00
Thomas Müller 3e87560033 Merge pull request #19727 from owncloud/fix_19678
Return path instead of itemsource
2015-10-14 12:38:38 +02:00
Thomas Müller bfac6c5eb7 Merge pull request #19730 from owncloud/fix_17560
Squash collection shares
2015-10-14 12:38:16 +02:00
Martin 2c32811156 adding occ upgrade text note 2015-10-14 12:16:17 +02:00
Jenkins for ownCloud f9dd750ed7 [tx-robot] updated from transifex 2015-10-14 01:55:36 -04:00
Roeland Jago Douma 002e9c76cd Combine OCS API getUser method code into provisioning_api app
Fixes #13002

Move the cloud/users/{userid} code in total to the provisioning API.
2015-10-13 21:07:48 +02:00
Vincent Petry 02513f8d04 Fix mtime PROPPATCH to be "lastmodified" instead of "getlastmodified"
Fix regression that makes PROPPATCH of mtime work like it did in OC <=
8.0.
The PROPPATCH must be done on the "lastmodified" property.
The "getlastmodified" now return 403 again.
2015-10-13 12:51:21 +02:00
Thomas Müller 3891cd9068 Merge pull request #19677 from owncloud/silently-fail-app-upgrade-exceptions-master
Silently fail app upgrade exceptions
2015-10-13 11:04:02 +02:00
Roeland Jago Douma 06aaa059d1 Squash collection shares
If folder1 is shared to user2 and user3. And folder1/folder2 is shared
to user4 and user5 then getting all the users with access to
folder1/folder2 should only list user2 and user 3 once.

Previously this was done twice since we request the info two times.

This fix makes sure that we only append unique results to the array.

* Added test
2015-10-13 10:05:49 +02:00
Roeland Jago Douma 585e9cb0e9 Return path instead of itemsource
Fixes #19678

Errors should contain paths and not internal ids
2015-10-13 09:00:33 +02:00
Jenkins for ownCloud 1f146d678c [tx-robot] updated from transifex 2015-10-13 01:55:06 -04:00
Lukas Reschke e03f0542e4 Strip directory from scriptName
`\OCP\IRequest::getScriptName` will also return the directory, so if ownCloud is installed in a subfolder such as `owncloud/` it will resolve to `/owncloud/ocs/v2.php`. This made this check fail and also made it return invalid status codes.
2015-10-12 23:39:16 +02:00
Thomas Müller 64a8d01694 Merge pull request #19683 from owncloud/repair-donotrepairfoldermimetypes
Do not update mime types for folders with extension
2015-10-12 15:08:19 +02:00
Bjoern Schiessle 8185eaa6dd also detect files in a .part folder as part file 2015-10-12 13:59:16 +02:00
Thomas Müller 0036c637fc Merge pull request #19657 from owncloud/setup-transport
Setup sendmail transport
2015-10-12 13:44:26 +02:00
Jenkins for ownCloud d29d018cc7 [tx-robot] updated from transifex 2015-10-11 01:54:58 -04:00
Vincent Petry 8098c06e70 Do not update mime types for folders with extension
Some folders might have an extension like "test.conf".
This fix prevents to overwrite the folder's mime type with another mime
type while running the mimetype repair step.
2015-10-09 18:16:36 +02:00
Thomas Müller 4cb5970947 Always pass in ILogger 2015-10-09 14:08:22 +02:00
Thomas Müller bd21e5925c Clean code 2015-10-09 13:46:59 +02:00
Thomas Müller 38143d670b Catch exceptions during app upgrade - fixes #16240 2015-10-09 13:44:30 +02:00
Robin Appelman a42dd117e2 Merge pull request #19654 from owncloud/db-locking-no-scan-transaction
Dont use a transaction in the scanner while using db based locking
2015-10-09 12:38:54 +02:00
Morris Jobke bf579a153f fix IE8 user agent detection 2015-10-09 11:19:06 +02:00
Vincent Petry c7aef6c368 Fix uploading avatar and root certs in IE8 2015-10-09 11:19:05 +02:00
Jenkins for ownCloud 5cb83937fa [tx-robot] updated from transifex 2015-10-09 01:55:02 -04:00
Thomas Müller 020bb33150 Merge pull request #19034 from owncloud/http-request-warning
Prevent warning decoding content
2015-10-08 21:51:47 +02:00
Thomas Müller 3130438fcc Merge pull request #19651 from owncloud/recursive_mkdir_for_objectstores
make mkdir recursive, add phpdoc to api
2015-10-08 21:28:53 +02:00
Lukas Reschke 18394205c2 Setup sendmail transport
Replaces https://github.com/owncloud/core/pull/19047 and fixes https://github.com/owncloud/enterprise/issues/854  and https://github.com/owncloud/core/issues/19110
2015-10-08 16:48:18 +02:00
Thomas Müller 1227786930 Merge pull request #19650 from owncloud/disable-appstore-for-ee
Disable app store for EE by default
2015-10-08 16:00:41 +02:00
Robin Appelman 7ff5a6ccf4 Dont use a transaction in the scanner while using db based locking 2015-10-08 15:29:04 +02:00
Jörn Friedrich Dreyer 89a63ec74b make mkdir recursive, add phpdoc to api 2015-10-08 14:54:21 +02:00
Lukas Reschke 9866037d0c Disable app store for EE by default
This disables the app store for EE versions by default to address some problems caused by the wrong assumption that "Official" means supported by ownCloud Inc.

Administrators can still enable the app store by setting `appstoreenabled` to true in the config file.
2015-10-08 14:52:52 +02:00
Thomas Müller fd5636cda7 Merge pull request #19644 from owncloud/issue-19617-catch-exception-when-cleaning-locks
Catch "missing table" exception when cleaning up locks
2015-10-08 13:39:34 +02:00
Thomas Müller 2fda4e38e2 Merge pull request #19546 from owncloud/fix-search-for-node-api
Fix search operations for the Node API
2015-10-08 13:17:26 +02:00
Thomas Müller 8d2c8cf2a2 Merge pull request #19607 from owncloud/use-url
Use `/` if installed in main folder
2015-10-08 13:01:41 +02:00
Thomas Müller 95c8d7598b Merge pull request #19609 from owncloud/check_dav_move_permissions
[webdav] Check if source can be deleted before move
2015-10-08 13:01:20 +02:00
Joas Schilling 336a127426 Catch "missing table" exception when cleaning up locks 2015-10-08 11:37:51 +02:00
Joas Schilling e6d9869cf7 Only use zip64 when we have 64 bit php 2015-10-08 09:13:08 +02:00
Jenkins for ownCloud c5649a634f [tx-robot] updated from transifex 2015-10-08 01:54:58 -04:00
Thomas Müller 70ba594f45 Merge pull request #19537 from owncloud/fix-white-page-of-death
Fixes last causes for WSOD
2015-10-07 14:55:11 +02:00
Thomas Müller 9f25745649 Fix single file download - fixes #19614 2015-10-07 13:15:58 +02:00
Roeland Jago Douma 1ee56c702d [WEBDAV] check if delete of source is allowed on move
Fixes #5251

If we perform a move we need to make sure first that the source can be
deleted. Else the dest might be cleared but the move will fail later.

* Added unit tests

Eventually we need more and better checking here.
2015-10-07 11:58:16 +02:00
Joas Schilling 937fb70757 Do not trigger the update exception when we already show an error 2015-10-07 08:07:52 +02:00
Jenkins for ownCloud cd818e7419 [tx-robot] updated from transifex 2015-10-07 01:55:56 -04:00
Robin Appelman 59cf817308 Merge pull request #19511 from owncloud/etag-share-permissions-update
Mark shares as dirty when changing permissions
2015-10-06 18:09:12 +02:00
Robin Appelman c2d76d2010 fix internal path when searching in storage root 2015-10-06 15:54:17 +02:00
Olivier Paroz 3173ed29df The minimum size for internalRootLength is 1 2015-10-06 15:54:17 +02:00
Morris Jobke 285e73ac72 validate HTTP protocol in case of an exception 2015-10-06 15:25:31 +02:00
Lukas Reschke 6a4f22c61f Use `/` if installed in main folder
Otherwise an empty string is used indicating the cookie is only valid for those resources. This can lead to eunexpected behaviour.

Fixes https://github.com/owncloud/core/issues/19196
2015-10-06 15:24:19 +02:00
Thomas Müller 79524ce163 Merge pull request #19605 from owncloud/add-get-http-protocol
Add \OCP\IRequest::getHttpProtocol
2015-10-06 15:23:00 +02:00
Joas Schilling 13dd62f7b0 Make sure that remote shares use the correct uid casing 2015-10-06 15:16:19 +02:00
Lukas Reschke 80a232da6a Add \OCP\IRequest::getHttpProtocol
Only allow valid HTTP protocols.

Ref https://github.com/owncloud/core/pull/19537#discussion_r41252333 + https://github.com/owncloud/security-tracker/issues/119
2015-10-06 14:18:46 +02:00
Thomas Müller 48ef5b6b3b OC_Log not longer exists 2015-10-06 14:18:22 +02:00
Thomas Müller 319e61f0ea Merge pull request #19407 from owncloud/lock-zip-content
Lock zip content
2015-10-06 11:47:43 +02:00
Robin Appelman 0817024e6f Mark shares as dirty when changing permissions 2015-10-06 11:38:41 +02:00
Thomas Müller 0385a62363 Merge pull request #19597 from owncloud/update-license-headers
update licence headers via script
2015-10-06 11:18:35 +02:00
Morris Jobke b05422544d Fixes last causes for WSOD
* print plain text if rendering of exception/error page is not possible
2015-10-06 10:20:53 +02:00
Morris Jobke 8366ce2767 deduplicate @xenopathic 2015-10-06 09:52:19 +02:00
Thomas Müller da640adf68 Merge pull request #19577 from owncloud/share-donotreturnentrieswhenusernotingroup
Remove invalid share items from result when missing group membership
2015-10-06 09:24:22 +02:00
Thomas Müller 26b92c406c Merge pull request #19530 from owncloud/issue-13213-sharing-conflict-when-sharing-subfile
Make sure the share we found is for the same item
2015-10-06 09:23:44 +02:00
Jenkins for ownCloud 3ff60cc2e3 [tx-robot] updated from transifex 2015-10-06 01:55:00 -04:00
Morris Jobke b945d71384 update licence headers via script 2015-10-05 21:15:52 +02:00
Robin Appelman b1ce53f890 use a normal rename when moving from the same storage in the encryption wrapper 2015-10-05 20:55:57 +02:00
Thomas Müller be46cd6737 Refactor single file download into it's own method 2015-10-05 17:47:15 +02:00
Thomas Müller 57f841da2c Recursively lock folder contents 2015-10-05 17:31:37 +02:00
Vincent Petry 1c7244c120 Remove invalid share items from result when missing group membership
Group shares usually have subshare entries for every user. In some
situations it can happen that the user was removed from the group but
the subshare entries still exist.

This fix makes sure that such subshare entries are not returned any more
as the user isn't in the group any more.
2015-10-05 17:21:34 +02:00
Thomas Müller 3bf818450a release locks in case of exception 2015-10-05 16:53:57 +02:00
Thomas Müller def8e0c12a log the exception during zip creation 2015-10-05 16:53:57 +02:00
Thomas Müller b5dce05cb6 Lock files which are zipped 2015-10-05 16:53:57 +02:00
Thomas Müller 149792abe6 Clean PHPDoc 2015-10-05 16:53:57 +02:00
Bjoern Schiessle bf82015254 add some output to explain the pre-conditions for decrypt-all 2015-10-05 12:41:05 +02:00
Joas Schilling 3bbb65998f Make sure all variables are defined 2015-10-05 12:03:36 +02:00
Joas Schilling 8de0773214 Make sure the share we found is for the same item 2015-10-05 11:55:37 +02:00
Thomas Müller 56c35da8d5 Merge pull request #19416 from owncloud/node-hook-connector
pass view hooks trough to the node hooks
2015-10-05 10:25:04 +02:00
Jenkins for ownCloud 2ffb1c2135 [tx-robot] updated from transifex 2015-10-04 01:55:02 -04:00
Thomas Müller 99d7352ef9 Merge pull request #19545 from owncloud/fix-16908
Add remark that $run is not supported anymore
2015-10-03 10:17:36 +02:00
Jenkins for ownCloud e0084059b9 [tx-robot] updated from transifex 2015-10-03 01:56:20 -04:00
Lukas Reschke f6e055b2fd Add remark that $run is not supported anymore
Fixes https://github.com/owncloud/core/issues/16908
2015-10-02 23:19:26 +02:00