Fix use of dangling reference in wxFileSystemWatcher Unix code
Don't reference the "watch" object after possibly destroying it when handling
IN_DELETE_SELF inotify notification.
Closes #17122.
(cherry picked from commit 34d39c9dfb
)
This commit is contained in:
committed by
Vadim Zeitlin
parent
07168e3d2a
commit
e1a4b7d5aa
@@ -626,6 +626,7 @@ wxGTK:
|
||||
- Fix GTK+ warnings when refreshing wxListCtrl items (Scott Talbert).
|
||||
- Fix using wxHTTP and wxFTP from worker thread.
|
||||
- Make items selected from keyboard visible in wxListCtrl (Jonathan Dagresta).
|
||||
- Fix crashes in wxFileSystemWatcher implementation (David Hart).
|
||||
|
||||
wxMSW:
|
||||
|
||||
|
@@ -385,6 +385,7 @@ protected:
|
||||
// if the wd isn't found: repeated IN_DELETE_SELFs can occur
|
||||
wxFileName fn = GetEventPath(watch, inevt);
|
||||
wxString path(fn.GetPathWithSep());
|
||||
const wxString filespec(watch.GetFilespec());
|
||||
|
||||
if (m_watchMap.erase(inevt.wd) == 1)
|
||||
{
|
||||
@@ -406,7 +407,7 @@ protected:
|
||||
|
||||
// Tell the owner, in case it's interested
|
||||
// If there's a filespec, assume he's not
|
||||
if (watch.GetFilespec().empty())
|
||||
if (filespec.empty())
|
||||
{
|
||||
wxFileSystemWatcherEvent event(flags, fn, fn);
|
||||
SendEvent(event);
|
||||
|
Reference in New Issue
Block a user