aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/programs/Xserver/hw/nxagent
Commit message (Collapse)AuthorAgeFilesLines
* Compext.c: fix comparisons of 16bit sequence numbersUlrich Sibiller2021-06-081-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rep->generic.sequenceNumber is of type CARD16 state->sequence is of type unsigned long Converting state->sequence to an int as it has been done since the first version of nxcomp I know of (1.3.0-18 from 2003) is wrong here because for numbers > INT_MAX this will result in a negative number, which, after applying the 16bit modulo, will not match rep->generic.sequenceNumber. Example with numbers: CARD16 c = 24565 unsigned long u = 3179110389 c % 65536 = 24565 u % 65536 = 24565 (int)(u) = -1115856907 (int)(u) % 65536 = -40971 -40971 will not match 24565 To fix this we need to ensure the number stays positive. We use CARD16 for this to match the type in the request which is a 16bit number. On my system CARD16 is unsigned short which is guaranteed to contain _at least_ the 0-65,535 range. As there is no upper limit of the range we cannot drop the modulo because we need this value to be 16bit and not more. Thanks to Norm Green for providing log after log until we could finally identify the reason for him seeing "Xlib: unexpected async reply (sequence 0x94b01439)!" when pasting stopped working.
* nxagent: fix RESIZE dialog text to not end with a linefeedUlrich Sibiller2021-06-082-5/+3
| | | | It was the only dialog that had a linefeed a the end.
* Forward ClientMessages to nxproxy sideUlrich Sibiller2021-06-073-0/+72
| | | | | | | | | | | | This should help with clients requesting window manager actions like maximizing or minimizing. This is a first version as it only handles messages of type WM_STATE_CHANGE and _NET_WM_STATE. But ICCCM and EWMH know some more. The other direction, setting of properties by the WM, is already implemented in Rootless.c. Fixes ArcticaProject/nx-libs#1015
* release 3.5.99.263.5.99.26Mike Gabriel2021-02-041-1/+1
|
* Screen.c: rephrase commentUlrich Sibiller2021-02-031-2/+2
|
* Screen.c: Fix fullscreen (onescreen) at startupUlrich Sibiller2021-02-031-2/+31
| | | | Fixes ArcticaProject/nx-libs#991
* Window.c: add another FIXMEUlrich Sibiller2021-02-031-0/+5
|
* NXproperty.c: reorder functionsUlrich Sibiller2021-01-311-29/+31
| | | | | Make it obvious that GetWindowProperty() and ChangeWindowProperty are not derived from dix.
* NXproperty.c, dix.c: simplify ProcDeleteProperty()Ulrich Sibiller2021-01-301-43/+5
| | | | by calling the dix version after a check
* NXproperty.c: GetWindowProperty(): add more comments, restruct prototypeUlrich Sibiller2021-01-301-20/+15
|
* NXproperty.c: simplify and reformat GetWindowProperty()Ulrich Sibiller2021-01-301-10/+8
|
* NXproperty.c: clean returnsUlrich Sibiller2021-01-301-4/+4
| | | | remove unneccessary parentheses
* Window.c: Fix 32bit code pathUlrich Sibiller2021-01-301-10/+10
| | | | | | | | make it compile again Thanks to Simon Matter for reporting this and the patch. Fixes ArcticaProject/nx-libs#993
* nxagent: drop unused nxagentVisibility variablesUlrich Sibiller2021-01-303-6/+0
|
* Args.c: improve usage string for -geometryUlrich Sibiller2021-01-161-1/+1
|
* Screen.c: remove superflous code that produces a crashUlrich Sibiller2021-01-161-6/+0
| | | | Fixes ArcticaProject/nx-libs#987
* Display.c: fix and reformat broken commentUlrich Sibiller2021-01-161-12/+11
|
* Window.c: suppress warningUlrich Sibiller2021-01-161-1/+1
| | | | | | | | This used to be printed only in TEST mode. Some while ago I had changed that to WARNING (because it is a warning...). However, this happens e.g. when running the xscreensaver vfeedback module and it does not look like it is a problem at all. So let's suppress this warning again and leave it to the TEST mode as it used to be.
* fix formatting and spelling in various filesUlrich Sibiller2021-01-168-14/+13
|
* nxagent: Drop unused nxagentRootTileWindowUlrich Sibiller2021-01-162-4/+0
|
* Handlers.c: add FIXMEUlrich Sibiller2021-01-161-0/+3
|
* Screen.c: clarify that characters are comparedUlrich Sibiller2021-01-161-2/+2
|
* Client.h: conditionally add unused fieldUlrich Sibiller2021-01-161-2/+5
|
* Handlers.c: use the same boolean values as in NXdispatch.cUlrich Sibiller2021-01-161-2/+2
| | | | although there is no functional difference...
* manpage: document defaults for options -defer and -tileUlrich Sibiller2021-01-161-1/+11
|
* NXDispatch.c: remove double nxagentFreeAtomMap()Ulrich Sibiller2021-01-161-1/+0
|
* Window.c: check for malloc failureUlrich Sibiller2021-01-151-13/+22
| | | | PVS finding: "V522 There might be dereferencing of a potential null pointer 'props'"
* Window.c: check for malloc failureUlrich Sibiller2021-01-151-0/+8
| | | | PVS finding: "V522 There might be dereferencing of a potential null pointer 'nxagentConfiguredWindowList'."
* Screen.c: check for malloc failuresUlrich Sibiller2021-01-151-0/+39
| | | | PVS finding: "V522 There might be dereferencing of a potential null pointer"
* Splash.c: remove unneccessary checkUlrich Sibiller2021-01-151-9/+4
| | | | PVs finding: "V547 Expression '!nxagentWMPassed' is always true."
* Rootless.c: prevent PVS errorUlrich Sibiller2021-01-151-1/+2
| | | | "V547 Expression 'wmHints.input == 1' is always true."
* Render.c: Init BoxRecUlrich Sibiller2021-01-151-1/+1
| | | | PVS Studio: "V614 Potentially uninitialized variable 'glyphBox.*' used."
* Reconnect.c: fix possible realloc() memory lossUlrich Sibiller2021-01-151-2/+6
| | | | | | "V701 realloc() possible leak: when realloc() fails in allocating memory, original pointer 'nxagentReconnectErrorMessage' is lost. Consider assigning realloc() to a temporary pointer."
* NXglyph.c: check for malloc errorUlrich Sibiller2021-01-151-0/+7
| | | | | "V575 The potential null pointer is passed into 'memcpy' function. Inspect the first argument."
* Keyboard.c: fix possible NULL pointer dereferenceUlrich Sibiller2021-01-151-0/+5
| | | | | found by PVS Studio: "V522 There might be dereferencing of a potential null pointer 'keymap'."
* Drawable.c: Prevent PVS Studio warningUlrich Sibiller2021-01-151-1/+3
| | | | | "V560 A part of conditional expression is always true: oldStatus == NotSynchronized."
* Display.c: prevent PVS Studio realloc warningUlrich Sibiller2021-01-151-5/+11
| | | | | | "V701 realloc() possible leak: when realloc() fails in allocating memory, original pointer 'nxagentDefaultColormaps' is lost. Consider assigning realloc() to a temporary pointer."
* Atoms.c: add explanation for PVS Studio warningUlrich Sibiller2021-01-151-0/+3
| | | | | "V575 The potential null pointer is passed into 'strlen' function. Inspect the first argument. Check lines: 420, 403."
* NXpicture.c: remove unneccessary checkUlrich Sibiller2021-01-151-15/+12
| | | | | | | Code can only be reached if pPicture is non-NULL. Besides, pPicture will be accessed later anyway, regardless of this check. Finding of PVS Studio: "V547 Expression 'pPicture != NULL' is always true."
* Keyboard.c: simplify codeUlrich Sibiller2021-01-151-5/+3
| | | | Based on PVS Studio finding: "V547 Expression 'data' is always true."
* Colormap.c: remove unneccessary checkUlrich Sibiller2021-01-151-1/+1
| | | | | | | | success would always be true at the beginning of the loop as it is part of the loop condition. Finding from PVS Studio: "V560 A part of conditional expression is always true: success."
* Colormap.c: fix parenthesesUlrich Sibiller2021-01-151-1/+1
| | | | | | PVS Studio: "V592 The expression was enclosed by parentheses twice: '((* pRed * (limg + 1)))'. One pair of parentheses is unnecessary or misprint is present."
* Atoms.c: silence PVS Studio warningUlrich Sibiller2021-01-151-2/+6
| | | | | | "V701 realloc() possible leak: when realloc() fails in allocating memory, original pointer 'privAtomMap' is lost. Consider assigning realloc() to a temporary pointer."
* Atoms.c: cosmetics in nxagentWriteAtom()Ulrich Sibiller2021-01-151-1/+2
|
* Atoms.c: fix strlen(NULL)Ulrich Sibiller2021-01-151-1/+1
| | | | | FIX PVS Studio finding "V575 The potential null pointer is passed into 'strlen' function. Inspect the first argument"
* nxagent: make full screen mode selectable at startupUlrich Sibiller2021-01-154-9/+33
| | | | | | | | fullscreen= now accepts the new value "2" for a fullscreen covering only one screen. -geometry and geometry= now know additional keywords "allscreens" and "onescreen". Fixes ArcticaProject/nx-libs#923
* nxagent: nxagent(Default)WindowIsVisible() are BooleansUlrich Sibiller2021-01-154-7/+7
|
* Keyboard.c: noXkbExtension is a BooleanUlrich Sibiller2021-01-151-2/+2
|
* Font.c: Use Booleans where appropriateUlrich Sibiller2021-01-151-16/+16
|
* nxagent: make nxagentXkbState.Initialized a BooleanUlrich Sibiller2021-01-154-7/+6
|