summaryrefslogtreecommitdiff
path: root/cpp/src/Freeze/EvictorI.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'cpp/src/Freeze/EvictorI.cpp')
-rw-r--r--cpp/src/Freeze/EvictorI.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/cpp/src/Freeze/EvictorI.cpp b/cpp/src/Freeze/EvictorI.cpp
index 0a5a5918515..c7caa0b9f1d 100644
--- a/cpp/src/Freeze/EvictorI.cpp
+++ b/cpp/src/Freeze/EvictorI.cpp
@@ -15,13 +15,14 @@
#include <IceUtil/IceUtil.h>
-#include <Ice/StringConverter.h>
+#include <IceUtil/StringConverter.h>
#include <typeinfo>
using namespace std;
using namespace Freeze;
using namespace Ice;
+using namespace IceUtil;
//
// Static members
@@ -317,7 +318,11 @@ Freeze::EvictorIBase::allDbs() const
{
Db db(_dbEnv->getEnv(), 0);
- db.open(0, Ice::nativeToUTF8(_communicator, _filename).c_str(), 0, DB_UNKNOWN, DB_RDONLY, 0);
+ //
+ // Berkeley DB expects file paths to be UTF8 encoded.
+ //
+ db.open(0, nativeToUTF8(IceUtil::getProcessStringConverter(), _filename).c_str(), 0, DB_UNKNOWN,
+ DB_RDONLY, 0);
Dbc* dbc = 0;
db.cursor(0, &dbc, 0);