Ashod Nakashian
a66fb45c0b
Unlock when promoting to exclusive lock fails
...
In certain cases changeLock to EXCLUSIVE fails
and throws LockedException. This leaves the
file locked as SHARED in file_put_contents,
which prevents retrying (because on second
call file_put_contents takes another SHARED
lock on the same file, and changeLock doesn't
allow more than a single SHARED lock to promote
to EXCLUSIVE).
To avoid this case, we catch the LockedException
and unlock before re-throwing.
Signed-off-by: Ashod Nakashian <ashod.nakashian@collabora.co.uk>
2020-11-07 10:31:26 -05:00
Robin Appelman
cfde74442c
optimize View::getPath if we already know the storage id
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-09-16 13:49:07 +02:00
Christoph Wurst
cb057829f7
Update license headers for 19
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-29 11:57:22 +02:00
Scott Dutton
65e134c13a
Update View.php
2020-04-15 19:10:06 +01:00
Scott Dutton
75b99e85ff
Increase max read
...
8kb is very low, especially given this will be local files
Signed-off-by: Scott Dutton <scott@exussum.co.uk>
2020-04-12 13:01:29 +01:00
Christoph Wurst
caff1023ea
Format control structures, classes, methods and function
...
To continue this formatting madness, here's a tiny patch that adds
unified formatting for control structures like if and loops as well as
classes, their methods and anonymous functions. This basically forces
the constructs to start on the same line. This is not exactly what PSR2
wants, but I think we can have a few exceptions with "our" style. The
starting of braces on the same line is pracrically standard for our
code.
This also removes and empty lines from method/function bodies at the
beginning and end.
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 14:19:56 +02:00
Christoph Wurst
14c996d982
Use elseif instead of else if
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-10 10:35:09 +02:00
Christoph Wurst
42625a46be
Remove spaces after method or function call
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 16:05:56 +02:00
Christoph Wurst
afbd9c4e6e
Unify function spacing to PSR2 recommendation
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-04-09 13:54:22 +02:00
Christoph Wurst
1a9330cd69
Update the license headers for Nextcloud 19
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-31 14:52:54 +02:00
Christoph Wurst
b80ebc9674
Use the short array syntax, everywhere
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2020-03-26 16:34:56 +01:00
Roeland Jago Douma
3443a00621
Actually check if the owner is not null
...
Else this can error out on storages that do not have an owner (e.g.
groupfolders).
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2020-03-16 13:12:10 +01:00
Robin Appelman
fab22ac14c
pass the existing locks info when making locked exception with absolute paths
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2020-03-02 19:29:44 +01:00
Joas Schilling
08cadf8416
Don't create invalid users
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2020-02-12 10:55:27 +01:00
Christoph Wurst
5bf3d1bb38
Update license headers
...
Signed-off-by: Christoph Wurst <christoph@winzerhof-wurst.at>
2019-12-05 15:38:45 +01:00
Julius Härtl
9eb1554fad
Properly anotate LockedException in files node api
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-11-28 14:17:15 +01:00
Roeland Jago Douma
68748d4f85
Some php-cs fixes
...
* Order the imports
* No leading slash on imports
* Empty line before namespace
* One line per import
* Empty after imports
* Emmpty line at bottom of file
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2019-11-22 20:52:10 +01:00
Roeland Jago Douma
2f5810f26e
Merge pull request #15832 from nextcloud/bugfix/noid/fulltext-search-groupfolders
...
Fix full text search for groupfolders
2019-06-25 21:43:37 +02:00
Morris Jobke
9dac9710e4
Fix full text search for groupfolders
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2019-06-17 12:52:22 -01:00
Robin Appelman
b4e2d8f8ad
handle storage exceptions when trying to set mtime
...
not all storage backends can handle setting the mtime and they might
not always handle that error correctly.
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-06-06 16:09:27 +02:00
Robin Appelman
98dd526010
search files by id in shared storages last
...
this prevents unneeded recursion when the file is not in the share
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-05-28 20:03:45 +02:00
Robin Appelman
cc29f5d719
always allow moving mountpoints inside the same mountpoint
...
even if that mountpoint isn't normally a valid target for moving mounts into
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-03-19 15:56:18 +01:00
Joas Schilling
17d5e47937
Remove spaming debug logs
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-15 12:13:44 +01:00
Julius Härtl
c778032276
Properly handle null as ownerId if file system access is denied by access token
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2019-03-01 20:57:01 +01:00
Joas Schilling
01b4db62fb
Add dispatcher events to User and Group objects
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2019-03-01 20:56:59 +01:00
Robin Appelman
f69c2d1e84
cleanup shared lock if changing to exclusive lock failed
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2019-01-22 15:32:48 +01:00
Roeland Jago Douma
2c6d36105c
Emit write update only once on touch
...
When a touch is done (i.e. when creating a new file in the node API)
The hooks contain 'write' and 'touch' (and the operation is touch as
well). This would cause a double write update. Which doesn't make sense.
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-12-05 21:29:48 +01:00
Robin Appelman
4c0cbdff36
tokens can't be valid local user names
...
this saves searching for shares on non-public link dav requests
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-08-16 21:27:57 +02:00
Julius Härtl
73cf71a20f
Add resource type phpDoc for putContent methods
...
Signed-off-by: Julius Härtl <jus@bitgrid.net>
2018-06-26 13:58:58 +02:00
Robin Appelman
e3de7ec867
Debug log file not found when getting fileinfo
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-05-04 18:48:12 +02:00
Morris Jobke
fb296342b9
Merge pull request #9387 from nextcloud/getcachentry-lock
...
remove unneeded locks in getCacheEntry
2018-05-04 14:57:09 +02:00
Robin Appelman
734aec1522
remove unneeded locks in getCacheEntry
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-05-04 12:51:41 +02:00
Robin Appelman
d71783fb93
Log mount and storage issues in getFileInfo
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2018-05-02 15:11:59 +02:00
Arthur Schiwon
38a90130ce
move log constants to ILogger
...
Signed-off-by: Arthur Schiwon <blizzz@arthur-schiwon.de>
2018-04-26 10:45:52 +02:00
Morris Jobke
a661f043e1
Remove unneeded semicolon and parentheses
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-26 23:46:40 +01:00
Morris Jobke
4c38d1ed01
Merge pull request #8054 from nextcloud/substr-use-index
...
Use index based string access for substr with length of 1
2018-01-26 15:40:44 +01:00
Morris Jobke
9ff51aafc5
Use index based string access for substr with length of 1
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-26 13:38:34 +01:00
Morris Jobke
0a56d2185e
Return value immediately instead of assigning to a one-time variable
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-26 00:02:03 +01:00
Morris Jobke
2a38605545
Properly log the full exception instead of only the message
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2018-01-23 10:57:21 +01:00
Robin Appelman
05d2f61a59
handle not found mounts when cleaning avatars
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-12-11 16:56:10 +01:00
Morris Jobke
5d8421135e
Merge pull request #7014 from nextcloud/rename-locks
...
Unlock files even if an exception occurs while renaming
2017-11-09 09:47:36 +01:00
Morris Jobke
0eebff152a
Update license headers
...
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-11-06 16:56:19 +01:00
korelstar
c7482402b8
Unlock files even if an exception occurs
...
Signed-off-by: Kristof Hamann <korelstar@users.noreply.github.com>
2017-11-03 18:29:04 +01:00
Morris Jobke
de912385e0
Fix seeking on object storage
...
Seeking is not needed if the $from is 0, because then the pointer is already at the correct position. Additionally another fallback is added, that if the fseek fails it just uses an fread to skip the beginning of the file until it is at the correct position. This skipping is done with a chunked fread.
Signed-off-by: Morris Jobke <hey@morrisjobke.de>
2017-10-27 12:16:28 +02:00
Joas Schilling
b9b88aa666
Don't lock in the appdata_ directory
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-10 12:35:33 +02:00
Joas Schilling
5515c7b2c0
Still throw a locked exception when the path is not relative to $user/files/
...
Signed-off-by: Joas Schilling <coding@schilljs.com>
2017-08-10 11:58:01 +02:00
Morris Jobke
655c26224b
Merge pull request #5596 from nextcloud/mount-rename
...
Fix renaming of non-renamble mounts
2017-07-21 23:10:50 +02:00
Lukas Reschke
030d85bc9c
Remove unused functions
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-07-19 10:28:12 +02:00
Lukas Reschke
d8ec399454
Run phan over code base
...
Signed-off-by: Lukas Reschke <lukas@statuscode.ch>
2017-07-19 10:28:11 +02:00
Robin Appelman
0e107bc63c
non movable mounts can not be moved
...
Signed-off-by: Robin Appelman <robin@icewind.nl>
2017-07-17 15:09:08 +02:00