From 393efccb19e4340c414af5d6da74060b6534ca25 Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Sat, 25 Mar 2017 19:29:37 +0100 Subject: Fix GHOST crash on X11 with recent DPI changes on some systems. --- intern/ghost/intern/GHOST_WindowX11.cpp | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) (limited to 'intern/ghost') 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); + } } } } -- cgit v1.2.3