Pass by std::string instead of raw char array.
Fix restarting a handle watcher on Windows.