Vadim Zeitlin
f20fbba01f
Fix crash in wxMSW wxFileSystemWatcher when removing the same path twice.
...
Starting to watch a path, stopping to watch it, starting to watch it again and
stopping again resulted in a crash in wxMSW wxFileSystemWatcher implementation
because the watcher object wasn't kept artificially kept alive when it was
stopped for the second time. This happened because our way of keeping it alive
was to store it in a hash map indexed by path, but if a watcher for the same
path (added there when this path was first unwatched) was already present in
the map, the watcher wasn't added to it and not kept alive.
Fix this by using a vector instead of a map. We obviously sacrifice quick
access to it by path but at least this doesn't crash any more. And we could
actually still use a map, just indexed by the (unique) pointer to the object
stored inside wxSharedPtr itself, and not its path. But a vector might be a
more efficient data structure in practice, if we keep it from becoming too big
as we should try to do by triggering artificial port completions when a watch
is removed.
At any rate, at least the crash is fixed for now.
Closes #15995 .
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75905 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
2014-02-17 23:53:11 +00:00
..
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2014-01-06 12:42:37 +00:00
2014-01-06 12:42:37 +00:00
2014-02-05 22:12:53 +00:00
2014-02-09 19:53:17 +00:00
2014-01-06 12:42:37 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2014-01-07 21:54:42 +00:00
2013-07-26 16:02:46 +00:00
2014-02-17 23:53:11 +00:00
2014-01-07 21:54:42 +00:00
2014-01-21 19:32:04 +00:00
2013-07-26 16:02:46 +00:00
2014-01-21 19:32:00 +00:00
2014-01-20 14:45:08 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-02-16 20:05:19 +00:00
2013-09-11 12:03:07 +00:00
2014-01-07 21:54:42 +00:00
2014-02-04 07:37:31 +00:00
2014-01-06 12:42:37 +00:00
2013-07-26 16:02:46 +00:00
2014-02-01 18:18:52 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2012-05-25 09:48:09 +00:00
2012-01-09 14:04:25 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-11-28 12:43:12 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2014-01-06 12:42:37 +00:00
2013-11-12 18:06:37 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-10-14 15:08:06 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-10-15 16:12:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-28 16:52:11 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-11-12 18:06:37 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-05 13:56:04 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-03 01:12:58 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-12-18 16:00:21 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-02-05 22:12:53 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-06 12:42:37 +00:00
2013-10-10 16:05:07 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-10-14 15:08:06 +00:00
2011-03-30 14:16:04 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-12-02 16:30:25 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2012-09-18 22:45:38 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-28 14:32:35 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-12-16 10:51:27 +00:00
2013-09-12 20:49:10 +00:00
2013-09-12 20:49:10 +00:00
2013-07-26 16:02:46 +00:00
2014-01-20 14:45:08 +00:00
2014-01-04 20:07:33 +00:00
2014-01-04 20:07:33 +00:00
2014-01-04 20:07:33 +00:00
2013-09-15 00:15:02 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-06 12:42:37 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-10-19 19:27:29 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2011-03-20 00:14:35 +00:00
2011-03-20 00:14:35 +00:00
2013-07-26 16:02:46 +00:00
2013-10-07 09:58:51 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-09-18 16:03:28 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-20 14:45:08 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-02-01 10:39:25 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-10-14 15:08:40 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-09-30 23:49:05 +00:00
2013-07-26 16:02:46 +00:00
2014-01-03 14:40:08 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2011-01-19 10:47:57 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-06 12:42:37 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-05 13:56:04 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-09-15 00:15:02 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-02-04 15:59:52 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-09-15 00:15:02 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-12-31 14:03:34 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-09-21 09:28:42 +00:00
2013-11-12 18:06:37 +00:00
2013-07-26 16:02:46 +00:00
2014-01-07 21:54:42 +00:00
2013-07-26 16:02:46 +00:00
2013-09-06 17:09:11 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2011-03-30 14:16:04 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-31 16:03:51 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-10-09 10:45:43 +00:00
2013-10-16 16:45:53 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2012-09-17 11:07:30 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-09-18 16:03:25 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-30 19:40:29 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-09-20 17:27:59 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-10-16 16:45:53 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2011-03-16 10:55:30 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-11-19 13:13:22 +00:00
2013-11-21 13:47:05 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-09-15 00:15:12 +00:00
2013-07-26 16:02:46 +00:00
2014-01-20 14:45:08 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00
2013-09-06 17:09:16 +00:00
2013-07-26 16:02:46 +00:00
2013-09-17 15:25:59 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-10-14 15:08:06 +00:00
2013-10-17 12:33:53 +00:00
2013-12-03 13:38:35 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-09-15 00:15:02 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2013-07-26 16:02:46 +00:00
2014-01-04 20:07:33 +00:00
2013-07-26 16:02:46 +00:00