loolwsd/LOOLKit.cpp | 15 +++++++++++---- loolwsd/Unit.hpp | 6 ++++++ 2 files changed, 17 insertions(+), 4 deletions(-)
New commits: commit 6b88e97b630f6d0c490f8af87054e8aab90f4d77 Author: Michael Meeks <michael.me...@collabora.com> Date: Sun May 1 09:04:19 2016 +0100 Add unit test hook for libreofficekit. diff --git a/loolwsd/LOOLKit.cpp b/loolwsd/LOOLKit.cpp index 14b2a85..a0b32cd 100644 --- a/loolwsd/LOOLKit.cpp +++ b/loolwsd/LOOLKit.cpp @@ -975,11 +975,18 @@ void lokit_main(const std::string& childRoot, instdir_path = "/" + loTemplate + "/program"; } - LibreOfficeKit* loKit = lok_init_2(instdir_path.c_str(), "file:///user"); - if (loKit == nullptr) + LibreOfficeKit* loKit; { - Log::error("LibreOfficeKit initialization failed. Exiting."); - std::_Exit(Application::EXIT_SOFTWARE); + const char *instdir = instdir_path.c_str(); + const char *userdir = "file:///user"; + loKit = UnitKit::get().lok_init(instdir, userdir); + if (!loKit) + loKit = lok_init_2(instdir, userdir); + if (loKit == nullptr) + { + Log::error("LibreOfficeKit initialization failed. Exiting."); + std::_Exit(Application::EXIT_SOFTWARE); + } } Log::info("Process is ready."); diff --git a/loolwsd/Unit.hpp b/loolwsd/Unit.hpp index 6dc3045..dcdd36c 100644 --- a/loolwsd/Unit.hpp +++ b/loolwsd/Unit.hpp @@ -40,6 +40,7 @@ class StorageBase; typedef UnitBase *(CreateUnitHooksFunction)(); extern "C" { UnitBase *unit_create_wsd(void); } extern "C" { UnitBase *unit_create_kit(void); } +extern "C" { typedef struct _LibreOfficeKit LibreOfficeKit; } /// Derive your WSD unit test / hooks from me. class UnitBase @@ -186,6 +187,11 @@ public: virtual bool filterKitMessage(const std::shared_ptr<Poco::Net::WebSocket> & /* ws */, std::string &/* message */) { return false; } + + /// Allow a custom LibreOfficeKit wrapper + virtual LibreOfficeKit *lok_init(const char * /* instdir */, + const char * /* userdir */) + { return NULL; } }; #endif _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits