diff options
author | Eamon Walsh <ewalsh@tycho.nsa.gov> | 2008-02-15 19:53:45 -0500 |
---|---|---|
committer | Eamon Walsh <ewalsh@moss-charon.epoch.ncsc.mil> | 2008-02-20 15:59:40 -0500 |
commit | f343265a289724c81017f089c024a7618267c4e3 (patch) | |
tree | 2cf79ba31a1375d68237c77b813d79e9d72c665b /dix | |
parent | 7c2f0a8befb310707ea923dbcdfde84521e52c88 (diff) |
XACE: Make the default window background state configurable per-window.
To recap: the original XC-SECURITY extension disallowed background "None" if
the window was untrusted. XACE 1.0 preserved this check as a hook function.
XACE pre-2.0 removed the hook and first abolished background "None entirely,
then restored it as a global on/off switch in response to Bug #13683.
Now it's back to being per-window, via a flag instead of a hook function.
Diffstat (limited to 'dix')
-rw-r--r-- | dix/window.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/dix/window.c b/dix/window.c index 70e32fbcf..9975b5eec 100644 --- a/dix/window.c +++ b/dix/window.c @@ -291,6 +291,7 @@ SetWindowToDefaults(WindowPtr pWin) pWin->dontPropagate = 0; pWin->forcedBS = FALSE; pWin->redirectDraw = RedirectDrawNone; + pWin->forcedBG = FALSE; } static void @@ -702,8 +703,8 @@ CreateWindow(Window wid, WindowPtr pParent, int x, int y, unsigned w, return NullWindow; } - pWin->backgroundState = XaceBackgroundNoneState; - pWin->background.pixel = 0; + pWin->backgroundState = XaceBackgroundNoneState(pWin); + pWin->background.pixel = pScreen->whitePixel; pWin->borderIsPixel = pParent->borderIsPixel; pWin->border = pParent->border; @@ -1014,8 +1015,8 @@ ChangeWindowAttributes(WindowPtr pWin, Mask vmask, XID *vlist, ClientPtr client) if (!pWin->parent) MakeRootTile(pWin); else { - pWin->backgroundState = XaceBackgroundNoneState; - pWin->background.pixel = 0; + pWin->backgroundState = XaceBackgroundNoneState(pWin); + pWin->background.pixel = pScreen->whitePixel; } } else if (pixID == ParentRelative) |