X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/2d8e0096cd998ef0c3c282fec593d4ccd12e3eb4..ccec90930cfc38bd4347a97f46481242d9fd23cd:/src/gtk/utilsgtk.cpp diff --git a/src/gtk/utilsgtk.cpp b/src/gtk/utilsgtk.cpp index a8d0888c7c..93b8f02790 100644 --- a/src/gtk/utilsgtk.cpp +++ b/src/gtk/utilsgtk.cpp @@ -48,6 +48,8 @@ #if wxUSE_DETECT_SM #include "X11/Xlib.h" #include "X11/SM/SMlib.h" + + #include "wx/unix/utilsx11.h" #endif //----------------------------------------------------------------------------- @@ -242,17 +244,7 @@ wxTimerImpl *wxGUIAppTraits::CreateTimerImpl(wxTimer *timer) #if wxUSE_DETECT_SM static wxString GetSM() { - class Dpy - { - public: - Dpy() { m_dpy = XOpenDisplay(NULL); } - ~Dpy() { if ( m_dpy ) XCloseDisplay(m_dpy); } - - operator Display *() const { return m_dpy; } - private: - Display *m_dpy; - } dpy; - + wxX11Display dpy; if ( !dpy ) return wxEmptyString; @@ -365,14 +357,9 @@ bool wxGUIAppTraits::ShowAssertDialog(const wxString& msg) gtk_assert_dialog_set_message(GTK_ASSERT_DIALOG(dialog), msg.mb_str()); #if wxUSE_STACKWALKER - // don't show more than maxLines or we could get a dialog too tall to - // be shown on screen: 20 should be ok everywhere as even with 15 pixel - // high characters it is still only 300 pixels... - static const int maxLines = 20; - - // save current stack frame... + // save the current stack ow... StackDump dump(GTK_ASSERT_DIALOG(dialog)); - dump.SaveStack(maxLines); + dump.SaveStack(100); // showing more than 100 frames is not very useful // ...but process it only if the user needs it gtk_assert_dialog_set_backtrace_callback