INotify.pm - new helper poll_changes
authorDietmar Maurer <dietmar@proxmox.com>
Mon, 22 Jan 2018 11:12:41 +0000 (12:12 +0100)
committerWolfgang Bumiller <w.bumiller@proxmox.com>
Mon, 22 Jan 2018 13:52:04 +0000 (14:52 +0100)
Useful to detect file changes.

Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
src/PVE/INotify.pm

index 1e5687b..445c034 100644 (file)
@@ -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")) {