Switch to side-by-side view

--- a/src/internfile/mimehandler.cpp
+++ b/src/internfile/mimehandler.cpp
@@ -23,6 +23,7 @@
 #include <string>
 #include <vector>
 #include <list>
+#include <mutex>
 using namespace std;
 
 #include "cstr.h"
@@ -40,7 +41,6 @@
 #include "mh_symlink.h"
 #include "mh_unknown.h"
 #include "mh_null.h"
-#include "ptmutex.h"
 
 // Performance help: we use a pool of already known and created
 // handlers. There can be several instances for a given mime type
@@ -50,14 +50,14 @@
 static list<multimap<string, RecollFilter*>::iterator> o_hlru;
 typedef list<multimap<string, RecollFilter*>::iterator>::iterator hlruit_tp;
 
-static PTMutexInit o_handlers_mutex;
+static std::mutex o_handlers_mutex;
 
 static const unsigned int max_handlers_cache_size = 100;
 
 /* Look for mime handler in pool */
 static RecollFilter *getMimeHandlerFromCache(const string& key)
 {
-    PTMutexLocker locker(o_handlers_mutex);
+    std::unique_lock<std::mutex> locker(o_handlers_mutex);
     string xdigest;
     MD5HexPrint(key, xdigest);
     LOGDEB("getMimeHandlerFromCache: "  << (xdigest) << " cache size "  << (o_handlers.size()) << "\n" );
@@ -90,7 +90,7 @@
     }
     handler->clear();
 
-    PTMutexLocker locker(o_handlers_mutex);
+    std::unique_lock<std::mutex> locker(o_handlers_mutex);
 
     LOGDEB("returnMimeHandler: returning filter for "  << (handler->get_mime_type()) << " cache size "  << (o_handlers.size()) << "\n" );
 
@@ -124,7 +124,7 @@
 {
     LOGDEB("clearMimeHandlerCache()\n" );
     multimap<string, RecollFilter *>::iterator it;
-    PTMutexLocker locker(o_handlers_mutex);
+    std::unique_lock<std::mutex> locker(o_handlers_mutex);
     for (it = o_handlers.begin(); it != o_handlers.end(); it++) {
 	delete it->second;
     }