diff options
Diffstat (limited to 'moses2/DLLEntryApi.cpp')
-rw-r--r-- | moses2/DLLEntryApi.cpp | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/moses2/DLLEntryApi.cpp b/moses2/DLLEntryApi.cpp index cb8def6c0..e6c785bb4 100644 --- a/moses2/DLLEntryApi.cpp +++ b/moses2/DLLEntryApi.cpp @@ -1,4 +1,5 @@ #include "Moses2Wrapper.h" +#include <iostream> using namespace std; using namespace Moses2; @@ -11,7 +12,7 @@ extern "C" __declspec(dllexport) int __stdcall GetMosesSystem(const char* filePa return 1; } -extern "C" __declspec(dllexport) int __stdcall MosesTranslate(Moses2::Moses2Wrapper * pObject, long id, const char* input, char * output, int strlen) { +extern "C" __declspec(dllexport) int __stdcall MosesTranslate(Moses2::Moses2Wrapper * pObject, long id, const char* input, char* output, int strlen) { if (pObject != NULL) { std::string tr = pObject->Translate(input, id); @@ -23,11 +24,11 @@ extern "C" __declspec(dllexport) int __stdcall MosesTranslate(Moses2::Moses2Wrap return 0; } } -extern "C" __declspec(dllexport) int __stdcall ReleaseSystem(Moses2::Moses2Wrapper * pObject) { - if (pObject != NULL) +extern "C" __declspec(dllexport) int __stdcall ReleaseSystem(Moses2::Moses2Wrapper ** pObject) { + if (*pObject != NULL) { - delete pObject; - pObject = NULL; + delete *pObject; + *pObject = NULL; return 1; } else { |