diff options
author | Konstantin Ritt <ritt.ks@gmail.com> | 2014-11-24 06:53:02 +0400 |
---|---|---|
committer | Konstantin Ritt <ritt.ks@gmail.com> | 2015-02-02 21:36:32 +0000 |
commit | d6e117e1d8b1b39311a5042fde762c475e884326 (patch) | |
tree | 69c3291b6988ae84be670e373432161c7e89e47a /src/plugins/platforms/windows/qwindowsfontengine.cpp | |
parent | baaf8f0156c9b02f6091460e53f2793c3502d3a5 (diff) |
Don't remember if passed HFONT was a stock object
According to GetStockObject() function docs at MSDN:
> It is not necessary (but it is not harmful) to delete
> stock objects by calling DeleteObject.
Change-Id: I755dc84c8b86ba2806e97ae41b3025aa3e633ae7
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src/plugins/platforms/windows/qwindowsfontengine.cpp')
-rw-r--r-- | src/plugins/platforms/windows/qwindowsfontengine.cpp | 17 |
1 files changed, 5 insertions, 12 deletions
diff --git a/src/plugins/platforms/windows/qwindowsfontengine.cpp b/src/plugins/platforms/windows/qwindowsfontengine.cpp index 33600766d8..6df07a7c67 100644 --- a/src/plugins/platforms/windows/qwindowsfontengine.cpp +++ b/src/plugins/platforms/windows/qwindowsfontengine.cpp @@ -264,14 +264,13 @@ int QWindowsFontEngine::getGlyphIndexes(const QChar *str, int numChars, QGlyphLa */ QWindowsFontEngine::QWindowsFontEngine(const QString &name, - HFONT _hfont, bool stockFontIn, LOGFONT lf, + HFONT _hfont, LOGFONT lf, const QSharedPointer<QWindowsFontEngineData> &fontEngineData) : QFontEngine(Win), m_fontEngineData(fontEngineData), _name(name), hfont(_hfont), m_logfont(lf), - stockFont(stockFontIn), ttf(0), hasOutline(0), lw(0), @@ -325,10 +324,8 @@ QWindowsFontEngine::~QWindowsFontEngine() // make sure we aren't by accident still selected SelectObject(m_fontEngineData->hdc, (HFONT)GetStockObject(SYSTEM_FONT)); - if (!stockFont) { - if (!DeleteObject(hfont)) - qErrnoWarning("%s: QFontEngineWin: failed to delete non-stock font... failed", __FUNCTION__); - } + if (!DeleteObject(hfont)) + qErrnoWarning("%s: QFontEngineWin: failed to delete font...", __FUNCTION__); qCDebug(lcQpaFonts) << __FUNCTION__ << _name; if (!uniqueFamilyName.isEmpty()) { @@ -1365,14 +1362,10 @@ QFontEngine *QWindowsMultiFontEngine::loadEngine(int at) // Get here if original font is not DirectWrite or DirectWrite creation failed for some // reason HFONT hfont = CreateFontIndirect(&lf); - - bool stockFont = false; - if (hfont == 0) { + if (hfont == 0) hfont = (HFONT)GetStockObject(ANSI_VAR_FONT); - stockFont = true; - } - return new QWindowsFontEngine(fam, hfont, stockFont, lf, data); + return new QWindowsFontEngine(fam, hfont, lf, data); } bool QWindowsFontEngine::supportsTransformation(const QTransform &transform) const |