From 5c0ba29c6cd464dd72fb332bd6e4b7e2cdac20da Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?=
 <grubba@grubba.org>
Date: Fri, 29 Jun 2018 11:33:50 +0200
Subject: [PATCH] Filesystem.Monitor: Fix NULL-dereference in bump().

Survive st being zero in bump().

Fixes [PIKE-116].
---
 .gitattributes                                      | 1 -
 lib/modules/Filesystem.pmod/Monitor.pmod/basic.pike | 4 ++--
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/.gitattributes b/.gitattributes
index 05a4bff688..dc7e03e1b8 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -7,5 +7,4 @@
 # Files containing CVS ids follow.
 # Remove the corresponding line before committing
 # changes to these files.
-/lib/modules/Filesystem.pmod/Monitor.pmod/basic.pike foreign_ident
 /lib/modules/Filesystem.pmod/Monitor.pmod/symlinks.pike foreign_ident
diff --git a/lib/modules/Filesystem.pmod/Monitor.pmod/basic.pike b/lib/modules/Filesystem.pmod/Monitor.pmod/basic.pike
index 09a68e5ff2..3477a30994 100644
--- a/lib/modules/Filesystem.pmod/Monitor.pmod/basic.pike
+++ b/lib/modules/Filesystem.pmod/Monitor.pmod/basic.pike
@@ -1,7 +1,7 @@
 //
 // Basic filesystem monitor.
 //
-// $Id: basic.pike,v 1.38 2010/04/27 15:00:54 grubba Exp $
+// $Id$
 //
 // 2009-07-09 Henrik Grubbstr�m
 //
@@ -310,7 +310,7 @@ protected class Monitor(string path,
     next_poll -= seconds || 30;
     monitor_queue->adjust(this);
 
-    if ((flags & MF_RECURSE) && st->isdir && files) {
+    if ((flags & MF_RECURSE) && st && st->isdir && files) {
       // Bump the files in the directory as well.
       foreach(files, string file) {
 	file = canonic_path(Stdio.append_path(path, file));
-- 
GitLab