aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/programs/Xserver/hw/nxagent/Window.c
diff options
context:
space:
mode:
Diffstat (limited to 'nx-X11/programs/Xserver/hw/nxagent/Window.c')
-rw-r--r--nx-X11/programs/Xserver/hw/nxagent/Window.c89
1 files changed, 26 insertions, 63 deletions
diff --git a/nx-X11/programs/Xserver/hw/nxagent/Window.c b/nx-X11/programs/Xserver/hw/nxagent/Window.c
index a21bc4e49..1997859af 100644
--- a/nx-X11/programs/Xserver/hw/nxagent/Window.c
+++ b/nx-X11/programs/Xserver/hw/nxagent/Window.c
@@ -721,7 +721,7 @@ void nxagentRestackWindow(WindowPtr pWin, WindowPtr pOldNextSib)
void nxagentSwitchFullscreen(ScreenPtr pScreen, Bool switchOn)
{
- XEvent e;
+ XEvent e = {0};
if (nxagentOption(Rootless) == 1)
{
@@ -759,8 +759,6 @@ void nxagentSwitchFullscreen(ScreenPtr pScreen, Bool switchOn)
nxagentChangeOption(Fullscreen, switchOn);
- memset(&e, 0, sizeof(e));
-
e.xclient.type = ClientMessage;
e.xclient.message_type = nxagentAtoms[13]; /* _NET_WM_STATE */
e.xclient.display = nxagentDisplay;
@@ -1066,14 +1064,8 @@ void nxagentUpdateViewportFrame(int x, int y, int w, int h)
void nxagentMoveViewport(ScreenPtr pScreen, int hShift, int vShift)
{
- int newX;
- int newY;
- int oldX;
- int oldY;
-
+ int newX, newY, oldX = 0, oldY = 0;
Bool doMove = False;
- oldX = 0;
- oldY = 0;
if (nxagentOption(Rootless))
{
@@ -1244,11 +1236,9 @@ void nxagentConfigureWindow(WindowPtr pWin, unsigned int mask)
{
unsigned int valuemask;
XWindowChanges values;
- int offX, offY;
int j;
-
- offX = nxagentWindowPriv(pWin)->x - pWin->origin.x;
- offY = nxagentWindowPriv(pWin)->y - pWin->origin.y;
+ int offX = nxagentWindowPriv(pWin)->x - pWin->origin.x;
+ int offY = nxagentWindowPriv(pWin)->y - pWin->origin.y;
if (nxagentScreenTrap == 1)
{
@@ -1789,9 +1779,7 @@ Bool nxagentChangeWindowAttributes(WindowPtr pWin, unsigned long mask)
if (mask & CWColormap)
{
- ColormapPtr pCmap;
-
- pCmap = (ColormapPtr) LookupIDByType(wColormap(pWin), RT_COLORMAP);
+ ColormapPtr pCmap = (ColormapPtr) LookupIDByType(wColormap(pWin), RT_COLORMAP);
/*
FIXME: When the caller is nxagentReconfigureWindow
@@ -2098,14 +2086,10 @@ void nxagentWindowExposures(WindowPtr pWin, RegionPtr pRgn, RegionPtr other_expo
{
int i;
- XSetWindowAttributes attributes;
-
#ifdef TEST
fprintf(stderr, "nxagentWindowExposures: Initializing expose queue.\n");
#endif
- attributes.event_mask = StructureNotifyMask;
-
for (i = 0; i < EXPOSED_SIZE; i++)
{
nxagentExposeQueue.exposures[i].pWindow = NULL;
@@ -2119,6 +2103,7 @@ void nxagentWindowExposures(WindowPtr pWin, RegionPtr pRgn, RegionPtr other_expo
nxagentExposeQueue.length = 0;
nxagentExposeSerial = 0;
+ XSetWindowAttributes attributes = {.event_mask = StructureNotifyMask};
nxagentConfiguredSynchroWindow = XCreateWindow(nxagentDisplay, DefaultRootWindow(nxagentDisplay), 0, 0,
1, 1, 0, 0, InputOutput, 0, CWEventMask, &attributes);
@@ -2423,7 +2408,6 @@ static int nxagentForceExposure(WindowPtr pWin, void * ptr)
if (pWin -> drawable.class != InputOnly)
{
BoxRec Box;
- RegionPtr exposedRgn;
WindowPtr pRoot = pWin->drawable.pScreen->root;
Box.x1 = pWin->drawable.x;
@@ -2431,7 +2415,8 @@ static int nxagentForceExposure(WindowPtr pWin, void * ptr)
Box.x2 = Box.x1 + pWin->drawable.width;
Box.y2 = Box.y1 + pWin->drawable.height;
- exposedRgn = RegionCreate(&Box, 1);
+ RegionPtr exposedRgn = RegionCreate(&Box, 1);
+
RegionIntersect(exposedRgn, exposedRgn, &pRoot->winSize);
if (exposedRgn != NULL && RegionNotEmpty(exposedRgn) != 0)
@@ -3270,15 +3255,12 @@ Bool nxagentCheckWindowIntegrity(WindowPtr pWin)
if (width && height)
{
length = nxagentImageLength(width, height, format, 0, depth);
- data = malloc(length);
-
+ data = calloc(1, length);
if (data == NULL)
{
FatalError("nxagentCheckWindowIntegrity: Failed to allocate a buffer of size %d.\n", length);
}
- memset(data, 0, length);
-
image = XGetImage(nxagentDisplay, nxagentWindow(pWin), 0, 0,
width, height, plane_mask, format);
if (image == NULL)
@@ -3378,14 +3360,10 @@ Bool nxagentIsIconic(WindowPtr pWin)
void nxagentSetTopLevelEventMask(WindowPtr pWin)
{
- unsigned long mask = CWEventMask;
- XSetWindowAttributes attributes;
-
if (nxagentOption(Rootless) && nxagentWindowTopLevel(pWin))
{
- attributes.event_mask = nxagentGetEventMask(pWin);
-
- XChangeWindowAttributes(nxagentDisplay, nxagentWindow(pWin), mask, &attributes);
+ XSetWindowAttributes attributes = {.event_mask = nxagentGetEventMask(pWin)};
+ XChangeWindowAttributes(nxagentDisplay, nxagentWindow(pWin), CWEventMask, &attributes);
}
}
@@ -3541,29 +3519,21 @@ void nxagentAddConfiguredWindow(WindowPtr pWin, unsigned int valuemask)
valuemask |= CWStackingOrder;
}
- if (nxagentConfiguredWindowList == NULL)
{
+ ConfiguredWindowStruct *tmp = nxagentConfiguredWindowList;
+
nxagentConfiguredWindowList = malloc(sizeof(ConfiguredWindowStruct));
- nxagentConfiguredWindowList -> next = NULL;
+ nxagentConfiguredWindowList -> next = tmp; /* can be NULL */
nxagentConfiguredWindowList -> prev = NULL;
-
nxagentConfiguredWindowList -> pWin = pWin;
- }
- else
- {
- ConfiguredWindowStruct *tmp;
+ nxagentConfiguredWindowList -> valuemask = valuemask;
- tmp = malloc(sizeof(ConfiguredWindowStruct));
-
- tmp -> next = nxagentConfiguredWindowList;
- nxagentConfiguredWindowList -> prev = tmp;
- tmp -> prev = NULL;
- nxagentConfiguredWindowList = tmp;
- nxagentConfiguredWindowList -> pWin = pWin;
+ if (tmp)
+ {
+ tmp -> prev = nxagentConfiguredWindowList;
+ }
}
- nxagentConfiguredWindowList -> valuemask = valuemask;
-
return;
}
@@ -3623,22 +3593,15 @@ void nxagentDeleteConfiguredWindow(WindowPtr pWin)
void nxagentAddStaticResizedWindow(WindowPtr pWin, unsigned long sequence, int offX, int offY)
{
- if (nxagentStaticResizedWindowList == NULL)
- {
- nxagentStaticResizedWindowList = malloc(sizeof(StaticResizedWindowStruct));
- nxagentStaticResizedWindowList -> next = NULL;
- nxagentStaticResizedWindowList -> prev = NULL;
- }
- else
- {
- StaticResizedWindowStruct *tmp;
+ StaticResizedWindowStruct *tmp = nxagentStaticResizedWindowList;
- tmp = malloc(sizeof(StaticResizedWindowStruct));
+ nxagentStaticResizedWindowList = malloc(sizeof(StaticResizedWindowStruct));
+ nxagentStaticResizedWindowList -> next = tmp;
+ nxagentStaticResizedWindowList -> prev = NULL;
- tmp -> next = nxagentStaticResizedWindowList;
- nxagentStaticResizedWindowList -> prev = tmp;
- tmp -> prev = NULL;
- nxagentStaticResizedWindowList = tmp;
+ if (tmp)
+ {
+ tmp -> prev = nxagentStaticResizedWindowList;
}
nxagentStaticResizedWindowList -> pWin = pWin;