summaryrefslogtreecommitdiffstatshomepage
path: root/src/osd/modules/font/font_dwrite.cpp
diff options
context:
space:
mode:
author ImJezze <jezze@gmx.net>2016-03-12 12:31:13 +0100
committer ImJezze <jezze@gmx.net>2016-03-12 12:31:13 +0100
commita026a582f1a0ea8c1ede3acaddacef506ef3f3b0 (patch)
treee31573822f2359677de519f9f3b600d98e8764cd /src/osd/modules/font/font_dwrite.cpp
parent477d2abd43984f076b7e45f5527591fa8fd0d241 (diff)
parentdcab55bf53b94713a6f72e9633f5101c8dd6c08c (diff)
Merge pull request #15 from mamedev/master
Sync to base master
Diffstat (limited to 'src/osd/modules/font/font_dwrite.cpp')
-rw-r--r--src/osd/modules/font/font_dwrite.cpp23
1 files changed, 21 insertions, 2 deletions
diff --git a/src/osd/modules/font/font_dwrite.cpp b/src/osd/modules/font/font_dwrite.cpp
index 8f78badda3b..cfcc952ef0d 100644
--- a/src/osd/modules/font/font_dwrite.cpp
+++ b/src/osd/modules/font/font_dwrite.cpp
@@ -661,13 +661,31 @@ public:
{
}
+ virtual bool probe() override
+ {
+ // This module is available if it can load the expected API Functions
+ if (m_pfnD2D1CreateFactory.initialize() != 0
+ || m_pfnDWriteCreateFactory.initialize() != 0)
+ {
+ return false;
+ }
+
+ return true;
+ }
+
virtual int init(const osd_options &options) override
{
HRESULT result;
+ osd_printf_verbose("FontProvider: Initializing DirectWrite\n");
+
// Make sure we can initialize our api functions
- HR_RET1(m_pfnD2D1CreateFactory.initialize());
- HR_RET1(m_pfnDWriteCreateFactory.initialize());
+ if (m_pfnD2D1CreateFactory.initialize()
+ || m_pfnDWriteCreateFactory.initialize())
+ {
+ osd_printf_error("ERROR: FontProvider: Failed to load DirectWrite functions.\n");
+ return -1;
+ }
// Create a Direct2D factory.
HR_RET1(m_pfnD2D1CreateFactory(
@@ -692,6 +710,7 @@ public:
__uuidof(IWICImagingFactory),
(void**)&m_wicFactory));
+ osd_printf_verbose("FontProvider: DirectWrite initialized successfully.\n");
return 0;
}