Does anybody know why this is a macro and not a function? (screen.h) #define UPDATE_FVWM_SCREEN(fw) \ do { \ rectangle g; \ struct monitor *mnew; \ \ get_unshaded_geometry((fw), &g); \ mnew = FindScreenOfXY((fw)->g.frame.x, (fw)->g.frame.y); \ /* Avoid unnecessary updates. */ \ if (mnew == (fw)->m) \ break; \ (fw)->m_prev = (fw)->m; \ (fw)->m = mnew; \ (fw)->Desk = mnew->virtual_scr.CurrentDesk; \ EWMH_SetCurrentDesktop((fw)->m); \ desk_add_fw((fw)); \ BroadcastConfig(M_CONFIGURE_WINDOW, (fw)); \ } while(0)
The "do { ... } while (0)" was probably written by me. Ciao Dominik ^_^ ^_^ -- Dominik Vogt