X-Git-Url: https://git.brokenzipper.com/gitweb?a=blobdiff_plain;f=src%2Fclient.cc;fp=src%2Fclient.cc;h=e991639bb8d92db4e1dd4c1c647856cf9a136831;hb=fb1c1a81632bcf79be2808373941700b51a1d8ee;hp=9e3cdae195cb2dac77f9476b5c2dbd7303226813;hpb=c29a1f1430ef47db469c83d2cbca93a17e8bb83f;p=chaz%2Fopenbox diff --git a/src/client.cc b/src/client.cc index 9e3cdae1..e991639b 100644 --- a/src/client.cc +++ b/src/client.cc @@ -151,10 +151,13 @@ void Client::getDesktop() { // defaults to the current desktop _desktop = openbox->screen(_screen)->desktop(); + unsigned int d; if (otk::Property::get(_window, otk::Property::atoms.net_wm_desktop, otk::Property::atoms.cardinal, - (long unsigned*)&_desktop)) { + (long unsigned*)&d) && + d < openbox->screen(_screen)->numDesktops()) { + _desktop = d; #ifdef DEBUG // printf("Window requested desktop: %ld\n", _desktop); #endif