Skip to content

Commit 303fdf4

Browse files
nsamsjamesricky
authored andcommitted
Fix compressed events when create+remove events result in an invalid event
fix it by checking if the file exists on disk.
1 parent 7e74e2b commit 303fdf4

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

src/Kwf/FileWatcher/Backend/Fswatch.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,13 @@ protected function _getEventFromLine($line)
5555
$file = $m[1];
5656
$ev = $m[3];
5757

58+
//fswatch buffers create+delete sometimes to one event
59+
if ($ev == 'Created' && strpos($m[4], 'Removed') !== false && !file_exists($file)) {
60+
$ev = 'Removed';
61+
} else if ($ev == 'Removed' && strpos($m[4], 'Created') !== false && file_exists($file)) {
62+
$ev = 'Created';
63+
}
64+
5865
if ($ev == 'Updated') {
5966
return new ModifyEvent($file);
6067
} else if ($ev == 'Created') {

0 commit comments

Comments
 (0)