mirror of
https://bitbucket.org/smil3y/kdelibs.git
synced 2025-02-24 02:42:48 +00:00
kdeui: prevent segmentation fault due to failed XOpenDisplay()
This commit is contained in:
parent
0f11be04d2
commit
d17cfcde10
1 changed files with 8 additions and 5 deletions
|
@ -811,21 +811,24 @@ void KWindowSystem::lowerWindow( WId win )
|
||||||
|
|
||||||
bool KWindowSystem::compositingActive()
|
bool KWindowSystem::compositingActive()
|
||||||
{
|
{
|
||||||
|
bool ret = false;
|
||||||
if( QX11Info::display()) {
|
if( QX11Info::display()) {
|
||||||
init( INFO_BASIC );
|
init( INFO_BASIC );
|
||||||
if (s_d_func()->haveXfixes) {
|
if (s_d_func()->haveXfixes) {
|
||||||
return s_d_func()->compositingEnabled;
|
return s_d_func()->compositingEnabled;
|
||||||
} else {
|
} else {
|
||||||
create_atoms();
|
create_atoms();
|
||||||
return XGetSelectionOwner( QX11Info::display(), net_wm_cm );
|
ret = XGetSelectionOwner( QX11Info::display(), net_wm_cm );
|
||||||
}
|
}
|
||||||
} else { // work even without QApplication instance
|
} else { // work even without QApplication instance
|
||||||
Display* dpy = XOpenDisplay( NULL );
|
Display* dpy = XOpenDisplay( NULL );
|
||||||
create_atoms( dpy );
|
if (dpy) {
|
||||||
bool ret = XGetSelectionOwner( dpy, net_wm_cm ) != None;
|
create_atoms( dpy );
|
||||||
XCloseDisplay( dpy );
|
ret = XGetSelectionOwner( dpy, net_wm_cm ) != None;
|
||||||
return ret;
|
XCloseDisplay( dpy );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
QRect KWindowSystem::workArea( int desktop )
|
QRect KWindowSystem::workArea( int desktop )
|
||||||
|
|
Loading…
Add table
Reference in a new issue