aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Clipboard.c: remove superflous index determinationUlrich Sibiller2021-06-201-88/+84
| | | | we already have it at that stage
* Clipboard.c: always print SelectionCallBackKind in debug outputUlrich Sibiller2021-06-201-12/+26
|
* Clipboard.c: mark self-initiated eventUlrich Sibiller2021-06-201-0/+5
|
* Clipboard.c: rename function to better reflect meaningUlrich Sibiller2021-06-203-20/+15
| | | | Also improve Debug output.
* Clipboard.c: have lastServer* per selectionUlrich Sibiller2021-06-201-73/+110
| | | | This will help in PRIMARY content appearing in CLIPBOARD and vice versa.
* Clipboard.c: fix nxagentConvertSelectionUlrich Sibiller2021-06-201-22/+24
| | | | | | | - debug output was not printed at the beginning but later and was therefore missing sometimes - add comments/FIXMEs - re-enable failure notification for second call
* Clipboard.c: improve debug/test messagesUlrich Sibiller2021-06-201-4/+5
|
* Clipboard.c: simplify nxagentHandleSelectionRequestFromXServerUlrich Sibiller2021-06-201-120/+107
| | | | | | - remove redundant calls to nxagentFindLastSelectionOwnerIndex which reduce indentation level - scope improvements
* Clipboard.c: use index everywhereUlrich Sibiller2021-06-201-88/+87
|
* Clipboard.c: introduce translateLocalToRemote* helpersUlrich Sibiller2021-06-201-108/+90
| | | | | This also unifies target handling to never use TEXT or COMPOUND_TEXT (despite announcing it)
* Clipboard.c: rename selection fields to {int,rem}SelectionUlrich Sibiller2021-06-201-52/+88
| | | | This helps in avoiding storing the wrong value in a field.
* Clipboard.c: reformat for better readabilityUlrich Sibiller2021-06-201-23/+23
|
* Clipboard.c: improve function names once moreUlrich Sibiller2021-06-203-39/+39
|
* Clipboard.c: rework LastClient stuff to work _per selection_Ulrich Sibiller2021-06-203-232/+325
|
* Clipboard.c: catch selection failure from real X serverUlrich Sibiller2021-06-081-0/+8
|
* Clipboard.c: do not set stage to new value if already set to that valueUlrich Sibiller2021-06-081-0/+9
|
* Clipboard.c: print times unsignedUlrich Sibiller2021-06-081-4/+4
| | | | there are no negative times...
* Clipboard.c: improve explanations/FIXMEsUlrich Sibiller2021-06-081-1/+10
|
* Clipboard.c: improve debugging outputUlrich Sibiller2021-06-081-20/+36
|
* Clipboard.c: improve error messageUlrich Sibiller2021-06-081-20/+37
| | | | | | if we get an unexpected property print that as an error. Before we saw "unexpected stage" in that case which does not really help in debugging...
* Clipboard.c: add/fix commentsUlrich Sibiller2021-06-081-3/+6
|
* Merge branch 'uli42-pr/various7' into 3.6.xMike Gabriel2021-06-0831-399/+542
|\ | | | | | | Attributes GH PR #1007: https://github.com/ArcticaProject/nx-libs/pull/1007
| * nxagent: add missing command line switches to usage textUlrich Sibiller2021-06-081-0/+4
| |
| * Trap.h: fix type of trapsUlrich Sibiller2021-06-081-13/+15
| | | | | | | | They are Booleans for some time now but this change was missing in Trap.h
| * nxagent: fix some variable types in InitUlrich Sibiller2021-06-082-3/+3
| |
| * nxagent: make nxagentX2go a Boolean everywhereUlrich Sibiller2021-06-085-5/+5
| | | | | | | | also correct ugly if formatting regarding nxagentX2go
| * nxagent: make nxagentAlpha* BooleansUlrich Sibiller2021-06-085-10/+10
| |
| * nxagent: treat enableBackingStore as BooleanUlrich Sibiller2021-06-082-4/+4
| | | | | | | | Use TRUE and FALSE like dix does.
| * nxagent: make nxagentCompositeEnable a BooleanUlrich Sibiller2021-06-085-11/+9
| | | | | | | | there's no need for that variable to be tri-state
| * Composite.c: fix commentUlrich Sibiller2021-06-081-3/+3
| |
| * nxagent: add command line switch to enable compositeUlrich Sibiller2021-06-085-7/+20
| | | | | | | | We have it disabled by default but there hasn't been a way to enable it.
| * Compext.c: fix comparisons of 16bit sequence numbersUlrich Sibiller2021-06-081-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * Compext.c: fix misleading error messageUlrich Sibiller2021-06-081-5/+6
| | | | | | | | | | An X reply contains a type which is X_Reply or X_Error. This is not an opcode which is used when installing the handler.
| * Compext.c: print received vs expected sequence numberUlrich Sibiller2021-06-081-0/+28
| | | | | | | | Should help in debugging "unexpected async reply" problems
| * Compext.c: document function return codesUlrich Sibiller2021-06-081-0/+64
| |
| * document additional options only nxagent knows aboutUlrich Sibiller2021-06-083-36/+58
| |
| * Error.c: untabifyUlrich Sibiller2021-06-081-75/+75
| |
| * nxagent: drop NXAGENT_SHAPE2 defineUlrich Sibiller2021-06-082-26/+10
| | | | | | | | | | it was the default for years now, so let's drop the define and include the code unconditonally.
| * nxagent: drop NXAGENT_SHAPE defineUlrich Sibiller2021-06-082-16/+5
| | | | | | | | | | was never used in the past years, we were always compiling with -DNXAGENT_SHAPE2
| * nxagent: make X2GO support optionalUlrich Sibiller2021-06-0810-3/+39
| |
| * Use NXAGENT_ONSTART define at more locationsUlrich Sibiller2021-06-086-2/+15
| | | | | | | | | | marking all the code that is not really required when not using nomachine's nxclient.
| * Compext.c: add specific DEBUG and TEST macrosUlrich Sibiller2021-06-081-143/+159
| |
| * Compext.c: some scope improvementsUlrich Sibiller2021-06-081-37/+10
|/
* Merge branch 'Ponce-binutils-2.36' into 3.6.xMike Gabriel2021-06-081-12/+0
|\ | | | | | | Attributes GH PR #1012: https://github.com/ArcticaProject/nx-libs/pull/1012
| * fix building with binutils >= 2.36.ponce2021-06-081-12/+0
|/ | | | | | The l option of ar in the newer binutils versions switched from being unused to being used to specify dependencies so here should be safely removed
* Merge branch 'uli42-pr/fix_randr_crash' into 3.6.xMike Gabriel2021-06-081-0/+3
|\ | | | | | | Attributes GH PR #1011: https://github.com/ArcticaProject/nx-libs/pull/1011
| * randr: Do not update ConnectionInfo if NULLUlrich Sibiller2021-06-081-0/+3
|/ | | | | | | | | | | | | | | | | | | | | | Backport of this xorg-xserver commit: commit 941aeb3b92e644923bd112eef8023f033a140ee6 Author: Olivier Fourdan <ofourdan@redhat.com> Date: Fri May 13 08:58:58 2016 +0200 randr: Do not update ConnectionInfo if NULL RRScreenSizeNotify() will update the connection information block, but if this occurs during initialization before ConnectionInfo is even initialized, this will lead to a crash. Simply check for ConnectionInfo prior to update it to avoid the crash. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=95337 Reviewed-by: Adam Jackson <ajax@redhat.com> Signed-off-by: Olivier Fourdan <ofourdan@redhat.com> Fixes ArcticaProject/nx-libs#1009
* Merge branch 'uli42-pr/fix_async_replies' into 3.6.xMike Gabriel2021-06-081-4/+4
|\ | | | | | | Attributes GH PR #1010: https://github.com/ArcticaProject/nx-libs/pull/1010
| * 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.
* Merge branch 'vatral-support_cygwin64' into 3.6.xMike Gabriel2021-06-0810-25/+25
|\ | | | | | | Attributes GH PR #1008: https://github.com/ArcticaProject/nx-libs/pull/1008