aboutsummaryrefslogtreecommitdiff
path: root/nx-X11/programs/Xserver
Commit message (Collapse)AuthorAgeFilesLines
* Support building with legacy (pre-1.4.2) libXfont(1) versions.Mihai Moldovan2017-12-162-0/+10
| | | | | | | | Partly reverts ec30a857eb0d67b232f8d43e63a6370023f4c4d0, but in a forward-compatible manner. Legacy libXfont1 versions are automatically detected by the main Makefile.
* release 3.5.99.123.5.99.12Mike Gabriel2017-12-151-1/+1
|
* Xserver/hw/nxagent/Image.c: Fix regression FTBFS after d4465b71 got merged in.Mike Gabriel2017-12-151-4/+4
|
* release 3.5.99.113.5.99.11Mike Gabriel2017-12-151-1/+1
|
* Xserver/hw/nxagent/Clipboard.c: Fix free calls (free back to XFree).Mike Gabriel2017-12-151-3/+3
| | | | | | | | | | | They have been flawed ever since nxagent came up, as they were Xfree (non-capital f) always, but should have been XFree (capital F, defined in Xlibint.h and part of libNX_X11). . Probably this all should be free() all over the code (bearing in mind, that XFree() returns int, not void. But still... Fixes ArcticaProject/nx-libs#553.
* Xserver/hw/nxagent/compext: Xfree -> free and Xmalloc -> malloc.Mike Gabriel2017-12-154-121/+114
|
* Xserver/GL/glx/glxcmds.c: Cast small-int values through intptr_t when passed ↵Mike Gabriel2017-12-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | as pointers Picked from this X.org commit: commit b0dd6be2c8703f7062d45ac9fd646550c7d54e3b Author: Jamey Sharp <jamey@minilop.net> Date: Thu Oct 8 13:38:44 2009 +1100 Cast small-int values through intptr_t when passed as pointers On 64-bit systems, int and pointers don't have the same size, so GCC gives warnings about casts between int and pointer types. However, in the cases covered by this patch, it's always a value that fits in int being stored temporarily as a pointer and then converted back later, which is safe. Casting through the pointer-sized integer type intptr_t convinces the compiler that this is OK. Signed-off-by: Jamey Sharp <jamey@minilop.net> Signed-off-by: Daniel Stone <daniel@fooishbar.org> Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> (Only appropriate location for backporting: Xserver/GL/glx/glxcmds.c).
* glx: warning fixesMike Gabriel2017-12-141-1/+1
| | | | | | | | | | | | | | | | | | | commit 63ccaec2c39f4b5742383472c951ee2cd35c9e14 Author: Adam Jackson <ajax@redhat.com> Date: Tue Oct 19 11:59:23 2010 -0400 render2.c: In function ‘__glXDisp_Map2d’: render2.c:127: warning: ‘u1’ may be used uninitialized in this function render2.c: In function ‘__glXDisp_Map1d’: render2.c:90: warning: ‘u1’ may be used uninitialized in this function Remove unnecessary test, and change memcpy to memmove as all users were doing overlapping copies. Signed-off-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Daniel Stone <daniel@fooishbar.org> Backported-to-NX-by: Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
* Xserver/GL/glx/glxfb.c: Fix compiler warning: pointer-sign.Mike Gabriel2017-12-141-1/+1
| | | | | | | | glxfb.c: In function '__glXFBMemSwapBuffers': glxfb.c:117:5: warning: pointer targets in passing argument 10 of 'pGC->ops->PutImage' differ in signedness [-Wpointer-sign] buf); ^~~ glxfb.c:117:5: note: expected 'char *' but argument is of type 'GLubyte * {aka unsigned char *}'
* hw/nxagent/Events.c: Fix compiler warnings (with NX_DEBUG_INPUT): format.Mike Gabriel2017-12-141-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Events.c: In function 'nxagentDumpInputDevicesState': Events.c:4662:58: warning: format '%p' expects argument of type 'void *', but argument 3 has type 'DeviceIntPtr {aka struct _DeviceIntRec *}' [-Wformat=] fprintf(stderr, "\nKeyboard device state: \n\tdevice [%p]\n\tlast grab time [%lu]" ^ Events.c:4662:82: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'CARD32 {aka unsigned int}' [-Wformat=] fprintf(stderr, "\nKeyboard device state: \n\tdevice [%p]\n\tlast grab time [%lu]" ^ Events.c:4662:19: warning: format '%p' expects argument of type 'void *', but argument 7 has type 'GrabPtr {aka struct _GrabRec *}' [-Wformat=] fprintf(stderr, "\nKeyboard device state: \n\tdevice [%p]\n\tlast grab time [%lu]" ^ Events.c:4675:66: warning: format '%p' expects argument of type 'void *', but argument 3 has type 'WindowPtr {aka struct _Window *}' [-Wformat=] fprintf(stderr, "\nKeyboard grab state: \n\twindow pointer [%p]" ^ Events.c:4689:59: warning: format '%p' expects argument of type 'void *', but argument 3 has type 'DeviceIntPtr {aka struct _DeviceIntRec *}' [-Wformat=] fprintf(stderr, "\nPassive grab state: \n\tdevice [%p]\n\towner events flag [%s]" ^ Events.c:4689:23: warning: format '%lx' expects argument of type 'long unsigned int', but argument 10 has type 'Mask {aka unsigned int}' [-Wformat=] fprintf(stderr, "\nPassive grab state: \n\tdevice [%p]\n\towner events flag [%s]" ^ Events.c:4722:57: warning: format '%p' expects argument of type 'void *', but argument 3 has type 'DeviceIntPtr {aka struct _DeviceIntRec *}' [-Wformat=] fprintf(stderr, "\nPointer device state: \n\tdevice [%p]\n\tlast grab time [%lu]" ^ Events.c:4722:81: warning: format '%lu' expects argument of type 'long unsigned int', but argument 4 has type 'CARD32 {aka unsigned int}' [-Wformat=] fprintf(stderr, "\nPointer device state: \n\tdevice [%p]\n\tlast grab time [%lu]" ^ Events.c:4722:19: warning: format '%p' expects argument of type 'void *', but argument 7 has type 'GrabPtr {aka struct _GrabRec *}' [-Wformat=] fprintf(stderr, "\nPointer device state: \n\tdevice [%p]\n\tlast grab time [%lu]" ^ Events.c:4735:65: warning: format '%p' expects argument of type 'void *', but argument 3 has type 'WindowPtr {aka struct _Window *}' [-Wformat=] fprintf(stderr, "\nPointer grab state: \n\twindow pointer [%p]" ^ Events.c:4750:61: warning: format '%p' expects argument of type 'void *', but argument 3 has type 'DeviceIntPtr {aka struct _DeviceIntRec *}' [-Wformat=] fprintf(stderr, "\nPassive grab state: \n\tdevice [%p]\n\towner events flag [%s]" ^ Events.c:4750:25: warning: format '%lx' expects argument of type 'long unsigned int', but argument 10 has type 'Mask {aka unsigned int}' [-Wformat=] fprintf(stderr, "\nPassive grab state: \n\tdevice [%p]\n\towner events flag [%s]" ^
* hw/nxagent/NXxvdisp.c: Fix compiler warnings: misleading-indentationMike Gabriel2017-12-141-8/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | NXxvdisp.c: In function 'ProcXvDispatch': NXxvdisp.c:96:9: warning: this 'else' clause does not guard... [-Wmisleading-indentation] else ^~~~ NXxvdisp.c:99:13: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'else' break; ^~~~~ NXxvdisp.c:104:9: warning: this 'else' clause does not guard... [-Wmisleading-indentation] else ^~~~ NXxvdisp.c:107:10: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'else' break; ^~~~~ NXxvdisp.c:118:2: warning: this 'else' clause does not guard... [-Wmisleading-indentation] else ^~~~ NXxvdisp.c:121:13: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'else' break; ^~~~~ NXxvdisp.c:126:2: warning: this 'else' clause does not guard... [-Wmisleading-indentation] else ^~~~ NXxvdisp.c:129:13: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'else' break; ^~~~~ NXxvdisp.c:137:2: warning: this 'else' clause does not guard... [-Wmisleading-indentation] else ^~~~ NXxvdisp.c:140:13: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'else' break; ^~~~~ NXxvdisp.c:146:2: warning: this 'else' clause does not guard... [-Wmisleading-indentation] else ^~~~ NXxvdisp.c:149:6: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'else' break; ^~~~~
* hw/nxagent/NXdispatch.c: Fix compiler warning: misleading-indentationMike Gabriel2017-12-141-1/+1
| | | | | | | | | | NXdispatch.c: In function 'Dispatch': NXdispatch.c:309:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if (!(dispatchException & DE_TERMINATE)) ^~ NXdispatch.c:312:5: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'if' while (!dispatchException) ^~~~~
* Xserver/Xi/chgfctl.c: Fix compiler warning: misleading-indentation.Mike Gabriel2017-12-141-3/+3
| | | | | | | | | | chgfctl.c: In function 'ChangeKbdFeedback': chgfctl.c:359:6: warning: this 'else' clause does not guard... [-Wmisleading-indentation] else ^~~~ chgfctl.c:361:3: note: ...this statement, but the latter is misleadingly indented as if it is guarded by the 'else' kctrl.autoRepeats[inx] = ^~~~~
* nxagent manpage: extend description of keyboard optionUlrich Sibiller2017-12-141-4/+7
|
* Events.c/h: Rename & restructure some Xkb functionsUlrich Sibiller2017-12-142-22/+22
| | | | | nxagentInitKeyboardState -> nxagentInitXkbKeyboardState nxagentHandleKeyboardEvent -> nxagentHandleXkbKeyboardStateEvent
* Keyboard.c: Replace some memsets by zero initializationUlrich Sibiller2017-12-141-6/+3
|
* Keyboard.c: Fix indentationUlrich Sibiller2017-12-141-13/+13
|
* Keyboard.c: set variables to NULL after freeUlrich Sibiller2017-12-141-0/+3
|
* Keyboard.c: XkbDfltRepeatDelay and XkbDfltRepeatIntervall are int not uintUlrich Sibiller2017-12-141-1/+1
|
* Keyboard.c: Use calloc instead of malloc + memsetUlrich Sibiller2017-12-141-5/+1
|
* nxagent manpage: Extend keyboard documentationUlrich Sibiller2017-12-141-5/+23
|
* Keyboard.c: Make xkblock more robustUlrich Sibiller2017-12-141-1/+21
| | | | | | | If xorg upstream xkb gets extended one day the previous code would not block new xkb calls even if they would change keyboard settings. So only act on the currently known calls and throw an error for all unknown calls.
* Keyboard.c: Some code cleanupsUlrich Sibiller2017-12-141-57/+46
|
* nxagent manpage: Improve explanation of -noignore and -noxkblockUlrich Sibiller2017-12-141-2/+8
| | | | Fixes ArcticaProject/nx-libs#257
* Keyboard.c: Add some comments with changelog explanationsUlrich Sibiller2017-12-141-0/+21
| | | | This helps understanding the intention of the following code.
* Keyboard.c: print message class for user messagesUlrich Sibiller2017-12-141-4/+4
|
* Keyboard.c: Improve TEST outputUlrich Sibiller2017-12-141-1/+16
|
* small code cosmeticsUlrich Sibiller2017-12-131-1/+1
|
* always notify on size changesUlrich Sibiller2017-12-131-7/+1
| | | | this ensures that randr updates its private structures
* re-implement pre-xinerama behaviourUlrich Sibiller2017-12-131-20/+105
| | | | | If -rrxinerama was specified xrandr handling was broken. Adding/using a custom resolution via xrandr was not working anymore.
* nx-X11/programs/Xserver/os/xprintf.c: completely drop NX-related changes.Mihai Moldovan2017-12-131-9/+0
|
* Xserver/os/xprintf.c: Drop NoMachine's own implementation of Xvasprintf(). ↵Mike Gabriel2017-12-111-50/+1
| | | | | | | | | | | | | | | | | | | | | | Use stock implementation instead. * Reason from NoMachine's NX CHANGELOG for having its own implementation of Xvasprintf() (from around nxagent 3.3.0): - Fixed TR06G02225. The implementation of Xvprintf() has been reviewed to work on more platforms. Previous implementation caused a failure in the build of keyboard map on some platform like Solaris 8 and 9. - Fixed TR03G02198. Reimplemented Xvprintf() in Xserver/os to handle the case in which vsnprintf returned -1. * Reason for removing it again: - Fixes segfaults in SetDefaultFontPath when launching nxagent. - All locations in Xserver/** using the code check for return value of -1. - Solaris 8 and 9 are beyond of our support scope. - Keep more in sync with X.org. - Good moment to drop more GPL-2 code from Xserver's code base.
* nx-X11/programs/Xserver/os/xprintf.c: remove doubly-defined Xscnprintf ↵Mihai Moldovan2017-12-111-22/+2
| | | | | | | function, add missing header includes. Fix up for 1e3a97482840401af9ffcf73db6008ebfe6c1d52, which has been faulty in this regard.
* os/xprintf: add Xvscnprintf and XscnprintfDaniel Kurtz2017-12-102-0/+56
| | | | | | | | | | | | | | | | | | | | | | Backported from X.org: commit 5c2e2a164d615ab06be28a663734e782614b5cc7 Author: Daniel Kurtz <djkurtz@chromium.org> Date: Wed Apr 18 09:51:51 2012 +0000 os/xprintf: add Xvscnprintf and Xscnprintf Normal snprintf() usually returns the number of bytes that would have been written into a buffer had the buffer been long enough. The scnprintf() variants return the actual number of bytes written, excluding the trailing '\0'. Signed-off-by: Daniel Kurtz <djkurtz@chromium.org> Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net> Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> Backported-to-NX-by: Mihai Moldovan <ionic@ionic.de>
* Typo in xserver Xvasprintf()Colin Harrison2017-12-101-2/+2
| | | | | | | | | | | | | | | | | Backported from X.org: commit 1324b0ca9f8a7fdaf03b374c75eb3c9df407c2f1 Author: Colin Harrison <colin.harrison@virgin.net> Date: Fri Dec 10 00:08:24 2010 +0000 Typo in xserver Xvasprintf() I needed this patch in the wrapper around vsnprintf() in os/xprintf.c (MinGW for Windows build) to correct various crashes. Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com> Backported-to-NX-by: Mihai Moldovan <ionic@ionic.de>
* Add asprintf() implementation for platforms without itAlan Coopersmith2017-12-104-48/+272
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backported from X.org: commit c95c1d338fdb62dbe3dba934b97324fa778b7fce Author: Alan Coopersmith <alan.coopersmith@oracle.com> Date: Sat Nov 27 18:43:12 2010 -0800 Add asprintf() implementation for platforms without it Provides a portable implementation of this common allocating sprintf() API found in many, but not yet all, of the platforms we support. If the platform provides vasprintf() we simply wrap it, otherwise we implement it - either way callers can use it regardless of platform. Since not all platforms guarantee to NULL out the return pointer on failure, we don't either, and require callers to check the return value for -1. The old Xprintf() API is deprecated, but left for compatibility for now. The new API is added in a new header so that it can be used in parts of the server such as hw/xfree86/parser that don't include all the server headers. Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Mikhail Gusarov <dottedmag@dottedmag.net> Includes re-indentation changes from 9838b7032ea9792bec21af424c53c07078636d21. Backported-to-NX-by: Mihai Moldovan <ionic@ionic.de>
* Reintroduce -co as no-opUlrich Sibiller2017-12-072-0/+17
| | | | | | nxagent will abort if it encounters an unknown command line option. As we want 3.6 to be a drop-in replacement for 3.5 we cannot simply drop old options but must accept them as no-op.
* Events.c: add ifdef around nxagentRemoteWindowsTreeUlrich Sibiller2017-12-071-0/+3
| | | | It is called only if DEBUG_TREE is defined.
* Make sure XQueryTree results are freedUlrich Sibiller2017-12-073-22/+24
| | | | Fixes ArcticaProject/nx-libs#585
* Events.c: drop unused variableUlrich Sibiller2017-12-071-3/+0
|
* Events.c: move variable to inner scopeUlrich Sibiller2017-12-071-2/+1
|
* DIX: XKB: Set xkbInfo to NULL as well as freeing itDaniel Stone2017-12-071-0/+1
| | | | | | | | | | | | | | | | | Backported from X.org: commit 512bac25ec0e980968b93a2ebe88bd89bf99b697 Author: Daniel Stone <daniel@fooishbar.org> Date: Tue Nov 6 14:52:03 2007 +0000 DIX: XKB: Set xkbInfo to NULL as well as freeing it (bug # 10639) XkbRemoveResourceClient wants to access xkbInfo if it exists, so make sure we NULL it after freeing it. It doesn't make much sense to move the RemoveResourceClient call first, as there's not much point in notifying clients while we're shutting the server down anyway. Backported-to-NX-by: Ulrich Sibiller <uli42@gmx.de>
* Allow options to appear with other components.Daniel Stone2017-12-071-7/+0
| | | | | | | | | | | | Backported from X.Org: commit 1cfa9f647e0241f4b9e56556b128d7bfd987eaca Author: Daniel Stone <daniel@fooishbar.org> Date: Tue Feb 28 16:55:26 2006 +0000 Bug # 5216: Allow options to appear with other components. Backported-to-NX-by: Ulrich Sibiller <uli42@gmx.de>
* devPrivates fixesLars Knoll2017-12-072-1/+3
| | | | | | | | | | | | | | Backported from X.Org: commit 0693083335185ce05ee64546151f3fc43ce98575 Author: Lars Knoll <lars@trolltech.com> Date: Mon Mar 6 21:00:09 2006 +0000 render/picture.c Correctly initialize devPrivates variable in source only pictures to 0 miext/cw/cw.h Don't try to access devPrivates of source only pictures Backported-from-NX-by: Ulrich Sibiller <uli42@gmx.de>
* Coverity # 337: Remove useless NULL check.Adam Jackson2017-12-071-1/+1
| | | | | | | | | | | | Backported from X.org: Commit 6bb2dc02a7cffd6ed7dd28e88d584920a4150749 Author: Adam Jackson <ajax@nwnk.net> Date: Wed Mar 15 16:01:47 2006 +0000 Coverity # 337: Remove useless NULL check. Backported-to-NX-by: Ulrich Sibiller <uli42@gmx.de>
* Coverity # 491: Check version number correctly.Adam Jackson2017-12-071-1/+1
| | | | | | | | | | | | Backported from X.org: commit 72cc6307257fcbb800267464487bf918ee674328 Author: Adam Jackson <ajax@nwnk.net> Date: Wed Mar 15 16:32:05 2006 +0000 Coverity # 491: Check version number correctly. Backported-to-NX-by: Ulrich Sibiller <uli42@gmx.de>
* Coverity # 487: Check version number correctly.Adam Jackson2017-12-071-1/+1
| | | | | | | | | | | | | | Backported from X.org: commit 152090ce442e94de1ae920208a92931af6493c8c Author: Adam Jackson <ajax@nwnk.net> Date: Wed Mar 15 16:33:12 2006 +0000 Coverity # 487: Check version number correctly. Backported-to-NX-by: Ulrich Sibiller <uli42@gmx.de> Fixes ArcticaProject/nx-libs#542
* Coverity # 807: Fix a memory leak in XFixesExpandRegion.Adam Jackson2017-12-071-0/+1
| | | | | | | | | | | | | | Backported from X.org: commit 5e106a71b9f8077216d41619402952b0005dd8a4 Author: Adam Jackson <ajax@nwnk.net> Date: Wed Mar 15 16:49:04 2006 +0000 Coverity # 807: Fix a memory leak in XFixesExpandRegion. Backported-to-NX-by: Ulrich Sibiller <uli42@gmx.de> Fixes ArcticaProject/nx-libs#541
* randr: free crtc->outputs on destroyGiuseppe Bilotta2017-12-071-0/+1
| | | | | | | | | | | | | | | | | Backported from X.org: commit fc7fb5bbe1c8f787e53500b9a2ca4af815f310d1 Author: Giuseppe Bilotta giuseppe.bilotta@gmail.com Date: Thu Nov 9 10:21:21 2017 +0100 randr: free crtc->outputs on destroy Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Backported-to-NX-by: Ulrich Sibiller <uli42@gmx.de> Fixes ArcticaProject/nx-libs#558
* randr: always realloc crtcs and outputsGiuseppe Bilotta2017-12-072-12/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Backported from X.org: commit 16381d186e7c791031392ed8afcfd33009854e9e Author: Giuseppe Bilotta giuseppe.bilotta@gmail.com Date: Thu Nov 9 10:21:20 2017 +0100 randr: always realloc crtcs and outputs When the last crtc (resp. output) is destroyed, the rrScrPriv crtcs (resp. outputs) fields do not get cleared, which can lead to a situation where the private's numCrtcs (resp. numOutputs) field is zero, but the associated memory is still allocated. Just checking if numCrtcs (resp. numOutputs) is zero is thus not a good criteria to determine whetehr to use a realloc or a malloc. Since crtcs (resp. outputs) are NULL-initialized anyway, relying on numCrtcs (resp. numOutputs) is actually unnecessary, because reallocation of a NULL ptr is equivalent to a malloc anyway. Therefore, just use realloc() unconditionally, and ensure that the fields are properly initialized. Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Giuseppe Bilotta <giuseppe.bilotta@gmail.com> Backported-to-NX-by: Ulrich Sibiller <uli42@gmx.de> Fixes ArcticaProject/nx-libs#558