]> git.saurik.com Git - wxWidgets.git/blobdiff - src/common/fswatchercmn.cpp
Compilation fix for r74440 and STL builds.
[wxWidgets.git] / src / common / fswatchercmn.cpp
index 1fbf26b9ca7846e2cc3bcb31a74df3d03d17b794..a417a82ee7146b9d34048d3a6d0f0430b5ab962e 100644 (file)
@@ -42,6 +42,14 @@ static wxString GetFSWEventChangeTypeName(int type)
         return "ACCESS";
     case wxFSW_EVENT_ATTRIB: // Currently this is wxGTK-only
         return "ATTRIBUTE";
+#ifdef wxHAS_INOTIFY
+    case wxFSW_EVENT_UNMOUNT: // Currently this is wxGTK-only
+        return "UNMOUNT";
+#endif
+    case wxFSW_EVENT_WARNING:
+        return "WARNING";
+    case wxFSW_EVENT_ERROR:
+        return "ERROR";
     }
 
     // should never be reached!
@@ -54,6 +62,8 @@ static wxString GetFSWEventChangeTypeName(int type)
 // wxFileSystemWatcherEvent implementation
 // ============================================================================
 
+IMPLEMENT_DYNAMIC_CLASS(wxFileSystemWatcherEvent, wxEvent);
+
 wxString wxFileSystemWatcherEvent::ToString() const
 {
     return wxString::Format("FSW_EVT type=%d (%s) path='%s'", m_changeType,
@@ -92,7 +102,10 @@ bool wxFileSystemWatcherBase::Add(const wxFileName& path, int events)
     }
     else
     {
-        wxLogError(_("Can't monitor non-existent path \"%s\" for changes."),
+        // Don't overreact to being passed a non-existent item. It may have
+        // only just been deleted, in which case doing nothing is correct
+        wxLogTrace(wxTRACE_FSWATCHER,
+                   "Can't monitor non-existent path \"%s\" for changes.",
                    path.GetFullPath());
         return false;
     }
@@ -122,7 +135,7 @@ wxFileSystemWatcherBase::AddAny(const wxFileName& path,
     if ( it == m_watches.end() )
     {
         wxFSWatchInfoMap::value_type val(canonical, watch);
-        m_watches.insert(val).second;
+        m_watches.insert(val);
     }
     else
     {