aboutsummaryrefslogtreecommitdiffstats
path: root/lib/private/Files/View.php
diff options
context:
space:
mode:
Diffstat (limited to 'lib/private/Files/View.php')
-rw-r--r--lib/private/Files/View.php40
1 files changed, 24 insertions, 16 deletions
diff --git a/lib/private/Files/View.php b/lib/private/Files/View.php
index d256003537d..71815939310 100644
--- a/lib/private/Files/View.php
+++ b/lib/private/Files/View.php
@@ -744,14 +744,18 @@ class View {
// if it was a rename from a part file to a regular file it was a write and not a rename operation
$this->emit_file_hooks_pre($exists, $target, $run);
} elseif ($this->shouldEmitHooks($source)) {
- \OC_Hook::emit(
- Filesystem::CLASSNAME, Filesystem::signal_rename,
- [
- Filesystem::signal_param_oldpath => $this->getHookPath($source),
- Filesystem::signal_param_newpath => $this->getHookPath($target),
- Filesystem::signal_param_run => &$run
- ]
- );
+ $sourcePath = $this->getHookPath($source);
+ $targetPath = $this->getHookPath($target);
+ if ($sourcePath !== null && $targetPath !== null) {
+ \OC_Hook::emit(
+ Filesystem::CLASSNAME, Filesystem::signal_rename,
+ [
+ Filesystem::signal_param_oldpath => $sourcePath,
+ Filesystem::signal_param_newpath => $targetPath,
+ Filesystem::signal_param_run => &$run
+ ]
+ );
+ }
}
if ($run) {
$this->verifyPath(dirname($target), basename($target));
@@ -817,14 +821,18 @@ class View {
}
} elseif ($result) {
if ($this->shouldEmitHooks($source) && $this->shouldEmitHooks($target)) {
- \OC_Hook::emit(
- Filesystem::CLASSNAME,
- Filesystem::signal_post_rename,
- [
- Filesystem::signal_param_oldpath => $this->getHookPath($source),
- Filesystem::signal_param_newpath => $this->getHookPath($target)
- ]
- );
+ $sourcePath = $this->getHookPath($source);
+ $targetPath = $this->getHookPath($target);
+ if ($sourcePath !== null && $targetPath !== null) {
+ \OC_Hook::emit(
+ Filesystem::CLASSNAME,
+ Filesystem::signal_post_rename,
+ [
+ Filesystem::signal_param_oldpath => $sourcePath,
+ Filesystem::signal_param_newpath => $targetPath,
+ ]
+ );
+ }
}
}
}