diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2017-03-25 21:29:37 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2017-03-25 21:32:50 +0300 |
commit | 393efccb19e4340c414af5d6da74060b6534ca25 (patch) | |
tree | 4f57061024bfc438f71fbc849dd0364a170e6b20 /intern | |
parent | fe3fb236970ce30733381ad1ae8b89c55266c517 (diff) |
Fix GHOST crash on X11 with recent DPI changes on some systems.
Diffstat (limited to 'intern')
-rw-r--r-- | intern/ghost/intern/GHOST_WindowX11.cpp | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/intern/ghost/intern/GHOST_WindowX11.cpp b/intern/ghost/intern/GHOST_WindowX11.cpp index 429c9af0e3e..2019f58251f 100644 --- a/intern/ghost/intern/GHOST_WindowX11.cpp +++ b/intern/ghost/intern/GHOST_WindowX11.cpp @@ -1683,15 +1683,17 @@ getDPIHint() { /* Try to read DPI setting set using xrdb */ char* resMan = XResourceManagerString(m_display); - XrmDatabase xrdb = XrmGetStringDatabase(resMan); - if (xrdb) { - char* type = NULL; - XrmValue val; - - int success = XrmGetResource(xrdb, "Xft.dpi", "Xft.Dpi", &type, &val); - if (success && type) { - if (strcmp(type, "String") == 0) { - return atoi((char*)val.addr); + if (resMan) { + XrmDatabase xrdb = XrmGetStringDatabase(resMan); + if (xrdb) { + char* type = NULL; + XrmValue val; + + int success = XrmGetResource(xrdb, "Xft.dpi", "Xft.Dpi", &type, &val); + if (success && type) { + if (strcmp(type, "String") == 0) { + return atoi((char*)val.addr); + } } } } |