diff options
author | Neil <nyamatongwe@gmail.com> | 2015-03-15 10:09:49 +1100 |
---|---|---|
committer | Neil <nyamatongwe@gmail.com> | 2015-03-15 10:09:49 +1100 |
commit | 09ed78636ff1cb43b7faecf3576570a2d67a9a11 (patch) | |
tree | b05041d870bd2c2a481aa0b1a09e478fd0b1678f | |
parent | e734b83b61adfe835b1db56b314d95187b295f23 (diff) | |
download | scintilla-mirror-09ed78636ff1cb43b7faecf3576570a2d67a9a11.tar.gz |
Bug [#1705]. Fix a bug with Mingw-w64. Probably due to incorrect definition of
DWRITE_TEXT_METRICS struct in header.
-rw-r--r-- | win32/PlatWin.cxx | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/win32/PlatWin.cxx b/win32/PlatWin.cxx index 3fdfc6065..37724ced8 100644 --- a/win32/PlatWin.cxx +++ b/win32/PlatWin.cxx @@ -1793,12 +1793,13 @@ XYPOSITION SurfaceD2D::AverageCharWidth(Font &font_) { // Create a layout IDWriteTextLayout *pTextLayout = 0; const WCHAR wszAllAlpha[] = L"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ"; - HRESULT hr = pIDWriteFactory->CreateTextLayout(wszAllAlpha, static_cast<UINT32>(wcslen(wszAllAlpha)), + const size_t lenAllAlpha = wcslen(wszAllAlpha); + HRESULT hr = pIDWriteFactory->CreateTextLayout(wszAllAlpha, static_cast<UINT32>(lenAllAlpha), pTextFormat, 1000.0, 1000.0, &pTextLayout); if (SUCCEEDED(hr)) { DWRITE_TEXT_METRICS textMetrics; if (SUCCEEDED(pTextLayout->GetMetrics(&textMetrics))) - width = textMetrics.width / wcslen(wszAllAlpha); + width = textMetrics.width / lenAllAlpha; pTextLayout->Release(); } } |