diff --git a/lib/fsevents-handler.js b/lib/fsevents-handler.js
index <HASH>..<HASH> 100644
--- a/lib/fsevents-handler.js
+++ b/lib/fsevents-handler.js
@@ -166,9 +166,10 @@ function setFSEventsListener(path, realPath, listener, rawEmitter, fsw) {
     lst.delete(filteredListener);
     if (!lst.size) {
       FSEventsWatchers.delete(watchPath);
-      cont.watcher.stop();
-      cont.rawEmitter = cont.watcher = undefined;
-      Object.freeze(cont);
+      if (cont.watcher) return cont.watcher.stop().then(() => {
+        cont.rawEmitter = cont.watcher = undefined;
+        Object.freeze(cont);
+      });
     }
   };
 }
Fix segfault fsevents/fsevents#<I>.