From: Dietmar Maurer Date: Mon, 22 Jan 2018 11:12:41 +0000 (+0100) Subject: INotify.pm - new helper poll_changes X-Git-Url: https://git.proxmox.com/?p=pve-common.git;a=commitdiff_plain;h=3b671d82b116c450bb629b89ae1b17042a86cf08 INotify.pm - new helper poll_changes Useful to detect file changes. Signed-off-by: Dietmar Maurer --- diff --git a/src/PVE/INotify.pm b/src/PVE/INotify.pm index 1e5687b..445c034 100644 --- a/src/PVE/INotify.pm +++ b/src/PVE/INotify.pm @@ -199,6 +199,16 @@ sub discard_changes { return read_file ($filename, $full); } +sub poll_changes { + my ($filename) = @_; + + poll() if $inotify; # read new inotify events + + $versions->{$filename} = 0 if !defined ($versions->{$filename}); + + return $versions->{$filename}; +} + sub read_file { my ($fileid, $full) = @_; @@ -211,11 +221,7 @@ sub read_file { my $fd; my $shadow; - poll() if $inotify; # read new inotify events - - $versions->{$filename} = 0 if !defined ($versions->{$filename}); - - my $cver = $versions->{$filename}; + my $cver = poll_changes($filename); if (my $copy = $shadowfiles->{$filename}) { if ($fd = IO::File->new ($copy, "r")) {