This is an automated email from the git hooks/post-receive script. x2go pushed a change to branch 3.6.x in repository nx-libs. from b7034724a Merge branch 'uli42-pr/many_clipboard_fixes' into 3.6.x new 460562852 nx-X11: Add support for riscv64 architecture new 2124e2fae Merge branch 'AlexGhiti-int/alex/riscv64_support' into 3.6.x new d207d02f1 github actions: Use TIRPC for debian:sid new 00cc40a3b .github/workflows/nx-libs.ym: Always build with -DUseTIRPC=YES. new c26b9b291 Merge branch 'sunweaver-pr/debian-use-tirpc-in-ghactions' into 3.6.x new 3d76ed45e nxagent: extend x2go check new 1ef24c379 Merge branch 'uli42-pr/extend_x2go_check' into 3.6.x new 6090ab111 nxdialog: rework comments new e23efeb11 nxdialog: use os.linesep to make it work on other systems new 2e99e6234 Args.c: remove some empty lines new 4bdf03add Args.c: fix wrong comment new 5a6928f86 Args.c: remove superfluous SAFE_free() call new 3ab28297c Imakefiles: whitespace fixes new cf5bb486d Screen.c: Fix wrong format specifier new 5323e2cea Screen.c, Window.c: use "None" everywhere for FullscreenWindow new 70fde4c74 Clipboard.c: fix/reformat some comments new b06b6b1ef Merge branch 'uli42-pr/various8' into 3.6.x new 1a1b5e9c2 Add Ubuntu 22.04 new ae9a6b2e4 Merge pull request #1035 from gratuxri/ubuntu_jammy new c8553c70e Screen.c: fix handling of AllScreens without a running window manager new 106d6c8d4 Merge pull request #1033 from uli42/pr/nxclient_geometry new 1d9ba187b Clipboard.c: re-add callbacks new a86957b91 Clipboard.c: fix typo in array name new 7b22b2d40 Clipboard.c: use a TimeStamp datatype for lastTimeChanged as dix does new ce9782280 Events.c: fix typo in comment new 5ec4d7b8a Clipboard.c: fix some comments new a8d7b0c8c NXdispatch.c: use defined value CurrentTime instead of 0 new 8129c1f6b Merge pull request #1028 from uli42/pr/fix_clipboard_callbacks The 28 revisions listed above as "new" are entirely new to this repository and will be described in separate emails. The revisions listed as "adds" were already present in the repository and have only been added to this reference. Summary of changes: .github/workflows/nx-libs.yml | 7 +- nx-X11/config/cf/Imake.cf | 5 + nx-X11/config/cf/Imake.tmpl | 2 + nx-X11/config/cf/linux.cf | 9 ++ nx-X11/programs/Xserver/Imakefile | 12 +- nx-X11/programs/Xserver/hw/nxagent/Args.c | 13 +- nx-X11/programs/Xserver/hw/nxagent/Clipboard.c | 136 ++++++++++++++------- nx-X11/programs/Xserver/hw/nxagent/Events.c | 2 +- nx-X11/programs/Xserver/hw/nxagent/Imakefile | 55 ++++----- nx-X11/programs/Xserver/hw/nxagent/Init.c | 38 +++++- nx-X11/programs/Xserver/hw/nxagent/Init.h | 2 +- nx-X11/programs/Xserver/hw/nxagent/NXdispatch.c | 6 +- nx-X11/programs/Xserver/hw/nxagent/Screen.c | 5 +- nx-X11/programs/Xserver/hw/nxagent/Window.c | 2 +- .../programs/Xserver/hw/nxagent/compext/Imakefile | 18 +-- nxdialog/bin/nxdialog | 24 ++-- 16 files changed, 208 insertions(+), 128 deletions(-) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 2124e2fae72c4ac4694f5d4d17e62a6fa1fe8654 Merge: b7034724a 460562852 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Sat Oct 30 13:35:39 2021 +0200 Merge branch 'AlexGhiti-int/alex/riscv64_support' into 3.6.x Attributes GH PR #1023: https://github.com/ArcticaProject/nx-libs/pull/1023 nx-X11/config/cf/Imake.cf | 5 +++++ nx-X11/config/cf/Imake.tmpl | 2 ++ nx-X11/config/cf/linux.cf | 9 +++++++++ 3 files changed, 16 insertions(+) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 460562852eb4b1e14d2eeb81d2b96ea5de6ef683 Author: Alexandre Ghiti <alexandre.ghiti@canonical.com> Date: Fri Sep 10 08:51:53 2021 +0200 nx-X11: Add support for riscv64 architecture --- nx-X11/config/cf/Imake.cf | 5 +++++ nx-X11/config/cf/Imake.tmpl | 2 ++ nx-X11/config/cf/linux.cf | 9 +++++++++ 3 files changed, 16 insertions(+) diff --git a/nx-X11/config/cf/Imake.cf b/nx-X11/config/cf/Imake.cf index 9d683b858..612bc4e38 100644 --- a/nx-X11/config/cf/Imake.cf +++ b/nx-X11/config/cf/Imake.cf @@ -878,6 +878,11 @@ XCOMM Keep cpp from replacing path elements containing i486/i586/i686 # undef __powerpc64__ # undef tmp_set_big_endian # endif +# ifdef __riscv +# if __riscv_xlen == 64 +# define Riscv64Architecture +# endif +# endif # ifdef sparc # define SparcArchitecture # undef sparc diff --git a/nx-X11/config/cf/Imake.tmpl b/nx-X11/config/cf/Imake.tmpl index de1fca937..266be8c5a 100644 --- a/nx-X11/config/cf/Imake.tmpl +++ b/nx-X11/config/cf/Imake.tmpl @@ -509,6 +509,8 @@ XCOMM the platform-specific parameters - edit site.def to change #define ByteOrder X_BIG_ENDIAN #elif defined(Ppc64LeArchitecture) #define ByteOrder X_LITTLE_ENDIAN +#elif defined(Riscv64Architecture) +#define ByteOrder X_LITTLE_ENDIAN #elif defined(HPArchitecture) #define ByteOrder X_BIG_ENDIAN #elif defined(SuperHArchitecture) diff --git a/nx-X11/config/cf/linux.cf b/nx-X11/config/cf/linux.cf index c3e9eaafd..6851be558 100644 --- a/nx-X11/config/cf/linux.cf +++ b/nx-X11/config/cf/linux.cf @@ -783,6 +783,15 @@ XCOMM binutils: (LinuxBinUtilsMajorVersion) # define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines #endif /* PpcArchitecture */ +#ifdef Riscv64Architecture +# ifndef OptimizedCDebugFlags +# define OptimizedCDebugFlags -O3 +# endif +# define LinuxMachineDefines -D__riscv64__ +# define ServerOSDefines XFree86ServerOSDefines +# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64 +#endif /* Riscv64Achitecture */ + #ifdef s390Architecture # ifndef OptimizedCDebugFlags # define OptimizedCDebugFlags -O2 -fomit-frame-pointer GccAliasingArgs -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit d207d02f1c05a4e51d801740a20c23b033996635 Author: Ulrich Sibiller <uli42@gmx.de> Date: Mon Oct 18 23:59:25 2021 +0200 github actions: Use TIRPC for debian:sid --- .github/workflows/nx-libs.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/nx-libs.yml b/.github/workflows/nx-libs.yml index 14625feb1..4fa580e76 100644 --- a/.github/workflows/nx-libs.yml +++ b/.github/workflows/nx-libs.yml @@ -176,11 +176,11 @@ jobs: ;; esac case "${{ matrix.cfg.container }}" in - ubuntu*|debian*) - make - ;; - fedora*|centos*) + fedora*|centos*|debian:sid) export IMAKE_DEFINES="-DUseTIRPC=YES" make IMAKE_DEFINES="${IMAKE_DEFINES}" ;; + ubuntu*|debian*) + make + ;; esac -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 00cc40a3b79f2309a368db0e0a63d09f45c45e7c Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Sat Oct 30 14:17:58 2021 +0200 .github/workflows/nx-libs.ym: Always build with -DUseTIRPC=YES. --- .github/workflows/nx-libs.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/nx-libs.yml b/.github/workflows/nx-libs.yml index 4fa580e76..0d70fa970 100644 --- a/.github/workflows/nx-libs.yml +++ b/.github/workflows/nx-libs.yml @@ -176,11 +176,8 @@ jobs: ;; esac case "${{ matrix.cfg.container }}" in - fedora*|centos*|debian:sid) + fedora*|centos*|debian*|ubuntu*) export IMAKE_DEFINES="-DUseTIRPC=YES" make IMAKE_DEFINES="${IMAKE_DEFINES}" ;; - ubuntu*|debian*) - make - ;; esac -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit c26b9b291562ea2cd3b021db7f81cf086c99bd2c Merge: 2124e2fae 00cc40a3b Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Sat Oct 30 21:14:34 2021 +0200 Merge branch 'sunweaver-pr/debian-use-tirpc-in-ghactions' into 3.6.x Attributes GH PR #1026: https://github.com/ArcticaProject/nx-libs/pull/1026 .github/workflows/nx-libs.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 3d76ed45e22f7a71de3ca0e918da01bb5936f0cf Author: Ulrich Sibiller <uli42@gmx.de> Date: Mon Oct 18 22:11:26 2021 +0200 nxagent: extend x2go check do not only depend on the program name but also check the DISPLAY variable and the command line parameters. This mainly helps for testing some special constructs when you want to use an alternative nxagent for x2go connections. --- nx-X11/programs/Xserver/hw/nxagent/Args.c | 2 +- nx-X11/programs/Xserver/hw/nxagent/Init.c | 38 ++++++++++++++++++++++++++++--- nx-X11/programs/Xserver/hw/nxagent/Init.h | 2 +- 3 files changed, 37 insertions(+), 5 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Args.c b/nx-X11/programs/Xserver/hw/nxagent/Args.c index ea17e4813..e2dc8c083 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Args.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Args.c @@ -201,7 +201,7 @@ int ddxProcessArgument(int argc, char *argv[], int i) /* * Check if we are running as X2Go Agent */ - checkX2goAgent(); + checkX2goAgent(argc, argv); #endif } diff --git a/nx-X11/programs/Xserver/hw/nxagent/Init.c b/nx-X11/programs/Xserver/hw/nxagent/Init.c index 8a9964154..fe51b595a 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Init.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Init.c @@ -183,20 +183,52 @@ Bool nxagentX2go; /* * Check if agent is X2goAgent */ -void checkX2goAgent(void) +void checkX2goAgent(int argc, char * argv[]) { #ifdef TEST fprintf(stderr, "%s: nxagentProgName [%s]\n", __func__, nxagentProgName); #endif + nxagentX2go = False; + if (strcasecmp(nxagentProgName,"x2goagent") == 0) { - fprintf(stderr, "\nrunning as X2Go Agent\n"); nxagentX2go = True; } else - nxagentX2go = False; + { + char *envDisplay = getenv("DISPLAY"); + + /* x2go DISPLAY variable contains ".x2go" */ + if (envDisplay && strstr(envDisplay, ".x2go-")) + { + nxagentX2go = True; + } + else + { + for (int i = 1; i < argc; i++) + { + /* x2go session names are passed with -name and start with "X2GO-" */ + if (argv[i] && strncmp(argv[i], "-name", 5) == 0) + { + if (i < argc - 1) + { + if (strstr(argv[i+1], "X2GO-")) + { + nxagentX2go = True; + break; + } + } + } + } + } + } + + if (nxagentX2go) + fprintf(stderr, "\nrunning as X2Go Agent\n"); } + + #endif /* diff --git a/nx-X11/programs/Xserver/hw/nxagent/Init.h b/nx-X11/programs/Xserver/hw/nxagent/Init.h index ec0bb3483..d08517771 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Init.h +++ b/nx-X11/programs/Xserver/hw/nxagent/Init.h @@ -47,7 +47,7 @@ extern Bool nxagentSaveUnder; #ifdef X2GO extern Bool nxagentX2go; -void checkX2goAgent(void); +void checkX2goAgent(int argc, char *argv[]); #endif extern ServerGrabInfoRec nxagentGrabServerInfo; -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 6090ab1119ce7947c66d56d168989877f54a29b1 Author: Ulrich Sibiller <uli42@gmx.de> Date: Tue Jun 8 20:50:55 2021 +0200 nxdialog: rework comments --- nxdialog/bin/nxdialog | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/nxdialog/bin/nxdialog b/nxdialog/bin/nxdialog index ab0dbf17f..8713b77c1 100755 --- a/nxdialog/bin/nxdialog +++ b/nxdialog/bin/nxdialog @@ -8,7 +8,7 @@ # shebang line. # Copyright (C) 2008 Google Inc. -# Copyright (C) 2019 Ulrich Sibiller <uli42@gmx.de> +# Copyright (C) 2019-2021 Ulrich Sibiller <uli42@gmx.de> # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -29,13 +29,13 @@ # Google project "neatx" (https://code.google.com/archive/p/neatx/). # List of changes: # - pulled in the few parts of the neatx python modules that are actually -# to make it a standlone script +# required to make it a standlone script # - added usage output # - dropped logging code, print errors to stderr # - can handle the "yesno" dialog type # - added missing docstrings # - pylint improvements -# - removed neatx entry from the pulldoww menu +# - removed neatx entry from the pulldown menu # - use PyGObject instead of PyGtk and thus Gtk3 # - replace optparse by argparse # - make code compatible to python2 and python3. @@ -46,11 +46,8 @@ # nxcomp library assumes this script is located in /usr/NX/bin/nxclient # # Examples: -# nxdialog --dialog yesno --message "message text" --caption "message title" --parent 0 -# nxdialog --dialog pulldown --message "message text" --caption "message title" \ -# --window 0x123456 --parent 0 -# -# pylint: disable=fixme, broad-except +# nxdialog --dialog yesno --message "text" --caption "title" --parent 0 +# nxdialog --dialog pulldown --message "text" --caption "title" --window 0x123456 --parent 0 from __future__ import print_function -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 1ef24c379f8d142180f77ecfe2ab43093c3b7a64 Merge: c26b9b291 3d76ed45e Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Sat Oct 30 21:16:27 2021 +0200 Merge branch 'uli42-pr/extend_x2go_check' into 3.6.x Attributes GH PR #1024: https://github.com/ArcticaProject/nx-libs/pull/1024 nx-X11/programs/Xserver/hw/nxagent/Args.c | 2 +- nx-X11/programs/Xserver/hw/nxagent/Init.c | 38 ++++++++++++++++++++++++++++--- nx-X11/programs/Xserver/hw/nxagent/Init.h | 2 +- 3 files changed, 37 insertions(+), 5 deletions(-) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit e23efeb1138ab70a25153f20f3b6d9ef08194429 Author: Ulrich Sibiller <uli42@gmx.de> Date: Tue Jun 8 20:51:12 2021 +0200 nxdialog: use os.linesep to make it work on other systems --- nxdialog/bin/nxdialog | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/nxdialog/bin/nxdialog b/nxdialog/bin/nxdialog index 8713b77c1..4ef19dffc 100755 --- a/nxdialog/bin/nxdialog +++ b/nxdialog/bin/nxdialog @@ -290,7 +290,7 @@ class NxDialogProgram(object): raise except Exception as expt: - sys.stderr.write("Caught exception: %s\n" % (expt)) + sys.stderr.write("Caught exception: %s" % (expt) + os.linesep) sys.exit(EXIT_FAILURE) @staticmethod @@ -363,23 +363,23 @@ class NxDialogProgram(object): """ Disconnect/terminate NX session upon user's request. """ if not self.options.dialog_type: - sys.stderr.write("Dialog type not supplied via --dialog\n") + sys.stderr.write("Dialog type not supplied via --dialog" + os.linesep) sys.exit(EXIT_FAILURE) dlgtype = self.options.dialog_type if dlgtype not in VALID_DLG_TYPES: - sys.stderr.write("Invalid dialog type '%s'\n" % (dlgtype)) + sys.stderr.write("Invalid dialog type '%s'" % (dlgtype) + os.linesep) sys.exit(EXIT_FAILURE) if dlgtype in (DLG_TYPE_PULLDOWN, DLG_TYPE_YESNOSUSPEND, DLG_TYPE_YESNO) and self.options.agentpid is None: - sys.stderr.write("Agent pid not supplied via --parent\n") + sys.stderr.write("Agent pid not supplied via --parent" + os.linesep) sys.exit(EXIT_FAILURE) if dlgtype == DLG_TYPE_PULLDOWN and not self.options.window: - sys.stderr.write("Window id not supplied via --window\n") + sys.stderr.write("Window id not supplied via --window" + os.linesep) sys.exit(EXIT_FAILURE) if self.options.caption: @@ -397,5 +397,4 @@ class NxDialogProgram(object): self.show_dialog(message_caption, message_text) - NxDialogProgram().main() -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 70fde4c748a0466343d308c79ecd4853499b58f1 Author: Ulrich Sibiller <uli42@gmx.de> Date: Thu Oct 28 18:19:00 2021 +0200 Clipboard.c: fix/reformat some comments --- nx-X11/programs/Xserver/hw/nxagent/Clipboard.c | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c index 72ca6ac64..f0cef595c 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c @@ -1251,10 +1251,12 @@ void nxagentHandleSelectionRequestFromXServer(XEvent *X) if (!nxagentOption(TextClipboard)) { - /* Optimization: if we have a current target cache check if the + /* + * Optimization: if we have a current target cache check if the * requested target is supported by the owner. If not we can take * a shortcut and deny the request immediately without doing any - * further communication. */ + * further communication. + */ if (targetCache[index].type == FOR_REMOTE && targetCache[index].forRemote) { XlibAtom *targets = targetCache[index].forRemote; @@ -1373,7 +1375,7 @@ void nxagentHandleSelectionRequestFromXServer(XEvent *X) } /* - * Selete property before sending the request to the client as + * Delete property before sending the request to the client as * required by ICCCM. */ DeleteProperty(lastSelectionOwner[index].windowPtr, clientCutProperty); @@ -1389,8 +1391,10 @@ void nxagentHandleSelectionRequestFromXServer(XEvent *X) x.u.selectionRequest.requestor, x.u.selectionRequest.selection, NameForLocalAtom(x.u.selectionRequest.selection)); #endif - /* No reply to the Xserver yet - we will do that once the answer - of the above sendEventToClient arrives. */ + /* + * No reply to the Xserver yet - we will do that once the answer + * of the above sendEventToClient arrives. + */ } else { @@ -1492,7 +1496,7 @@ static void transferSelectionFromXServer(int index, int resource) } else { - /* Collect the property and store it with index "resource" */ + /* Collect the property and store it with index "free_resource" */ result = NXCollectProperty(nxagentDisplay, free_resource, serverWindow, @@ -1581,8 +1585,10 @@ static void transferSelectionFromXServer(int index, int resource) setClientSelectionStage(index, SelectionStageWaitData); - /* We've seen situations where you had to move the mouse or press a - key to let the transfer complete. Flushing here fixed it */ + /* + * We've seen situations where you had to move the mouse or press a + * key to let the transfer complete. Flushing here fixed it + */ NXFlushDisplay(nxagentDisplay, NXFlushLink); break; -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 2e99e623457ebf0425c9c64a48131627c7826443 Author: Ulrich Sibiller <uli42@gmx.de> Date: Mon Oct 18 22:17:48 2021 +0200 Args.c: remove some empty lines --- nx-X11/programs/Xserver/hw/nxagent/Args.c | 4 ---- 1 file changed, 4 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Args.c b/nx-X11/programs/Xserver/hw/nxagent/Args.c index e2dc8c083..1a613ff38 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Args.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Args.c @@ -268,7 +268,6 @@ int ddxProcessArgument(int argc, char *argv[], int i) if (envOptions != NULL) { nxagentParseOptionString(envOptions); - SAFE_free(envOptions); } @@ -1154,7 +1153,6 @@ static void nxagentParseSingleOption(char *name, char *value) fprintf(stderr, "Warning: Ignoring bad value '%s' for option 'fullscreen'.\n", validateString(value)); } - return; } else if (!strcmp(name, "shpix")) @@ -1189,7 +1187,6 @@ static void nxagentParseSingleOption(char *name, char *value) fprintf(stderr, "Warning: Ignoring bad value '%s' for option 'shmem'.\n", validateString(value)); } - return; } else if (!strcmp(name, "composite")) @@ -1531,7 +1528,6 @@ static void nxagentParseSingleOption(char *name, char *value) } *argv[0] = '-'; - memcpy(argv[0] + 1, name, size); } -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 4bdf03addf2e6e3f0c8ad432df4a4df7a9e62266 Author: Ulrich Sibiller <uli42@gmx.de> Date: Mon Oct 18 22:10:43 2021 +0200 Args.c: fix wrong comment --- nx-X11/programs/Xserver/hw/nxagent/Args.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Args.c b/nx-X11/programs/Xserver/hw/nxagent/Args.c index 1a613ff38..1341840c7 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Args.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Args.c @@ -187,9 +187,8 @@ int ddxProcessArgument(int argc, char *argv[], int i) /* * The flavour can never change, so only set it once. * - * FIXME: ddxProcessArgument() is called once for every command line - * argument, with argv[0] being the argument and not the program - * name! We should move this check somewhere else. + * ddxProcessArgument() is called once for every command line + * argument, with argv[i] being the argument, i > 0. argv[0] is the program name. */ if (nxagentProgName == NULL) { -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 5a6928f86a2b7ee7e416fde592940dab862b714a Author: Ulrich Sibiller <uli42@gmx.de> Date: Mon Oct 18 22:18:06 2021 +0200 Args.c: remove superfluous SAFE_free() call --- nx-X11/programs/Xserver/hw/nxagent/Args.c | 2 -- 1 file changed, 2 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Args.c b/nx-X11/programs/Xserver/hw/nxagent/Args.c index 1341840c7..174873e51 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Args.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Args.c @@ -697,8 +697,6 @@ int ddxProcessArgument(int argc, char *argv[], int i) #ifdef TEST fprintf(stderr, "%s: changing nxagentKeyboard from [null/null] to [clone].\n", __func__); #endif - - SAFE_free(nxagentKeyboard); nxagentKeyboard = strdup("clone"); } else -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 3ab28297ce6aa46dfc5f023a405e0ed8247aa881 Author: Ulrich Sibiller <uli42@gmx.de> Date: Mon Oct 18 22:54:32 2021 +0200 Imakefiles: whitespace fixes --- nx-X11/programs/Xserver/Imakefile | 12 ++--- nx-X11/programs/Xserver/hw/nxagent/Imakefile | 55 +++++++++++----------- .../programs/Xserver/hw/nxagent/compext/Imakefile | 18 +++---- 3 files changed, 42 insertions(+), 43 deletions(-) diff --git a/nx-X11/programs/Xserver/Imakefile b/nx-X11/programs/Xserver/Imakefile index 390ad538b..72ed8484c 100644 --- a/nx-X11/programs/Xserver/Imakefile +++ b/nx-X11/programs/Xserver/Imakefile @@ -31,10 +31,10 @@ NULL = #include <Server.tmpl> -/* On most systems the linker requires the libraries in dependency order. +/* On most systems the linker requires the libraries in dependency order. But we have no real order because there are cycles. We fix this by adding - some libraries twice on the commandline. dependLib will add the - dependency library to the commandline if the link order is important */ + some libraries twice on the commandline. dependLib will add the + dependency library to the commandline if the link order is important */ #if 1 /* This is currently enabled for all systems */ #define dependLib(x) x #else @@ -43,7 +43,7 @@ NULL = #if defined(XorgVersion) /* Do not strip server binaries */ -INSTPGMFLAGS = +INSTPGMFLAGS = #endif #define PreFbLibs $(DIX) $(OS) $(XPDDX) @@ -136,7 +136,7 @@ INSTPGMFLAGS = FB = fb/LibraryTargetName(fb) DAMAGE = miext/damage/LibraryTargetName(damage) SHADOW = miext/shadow/LibraryTargetName(shadow) - LAYER = miext/layer/LibraryTargetName(layer) + LAYER = miext/layer/LibraryTargetName(layer) #if !HasFfs && (defined(mingwArchitecture) || defined(cygwinArchitecture)) /* Order of libraries is important when linking in mingw or * cygwin. libmi.a requires ffs from libdix.a. So it is added @@ -147,7 +147,7 @@ INSTPGMFLAGS = #endif MIINITEXTOBJ = mi/miinitext.o DIX = dix/LibraryTargetName(dix) -#if UsbMouseSupport +#if UsbMouseSupport #if !HasLibUsb USB = $(XF86OSSRC)/bsd/libusb/LibraryTargetName(usb) #else diff --git a/nx-X11/programs/Xserver/hw/nxagent/Imakefile b/nx-X11/programs/Xserver/hw/nxagent/Imakefile index 4e48f62f5..710bfba80 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Imakefile +++ b/nx-X11/programs/Xserver/hw/nxagent/Imakefile @@ -1,10 +1,9 @@ #include <Server.tmpl> - NULL = SUBDIRS = compext \ - $(NULL) + $(NULL) SRCS = \ NXwindow.c \ @@ -17,9 +16,9 @@ SRCS = \ NXglyph.c \ NXpicture.c \ NXshm.c \ - NXglxext.c \ - NXxvdisp.c \ - NXresource.c \ + NXglxext.c \ + NXxvdisp.c \ + NXresource.c \ NXmitrap.c \ Args.c \ Binder.c \ @@ -73,9 +72,9 @@ OBJS = \ NXglyph.o \ NXpicture.o \ NXshm.o \ - NXglxext.o \ - NXxvdisp.o \ - NXresource.o \ + NXglxext.o \ + NXxvdisp.o \ + NXresource.o \ NXmitrap.o \ Args.o \ Binder.o \ @@ -240,26 +239,26 @@ NX_DEFINES = \ #endif DEFINES = \ - -g $(OS_DEFINES) $(EXT_DEFINES) $(NX_DEFINES) \ - -UXF86VIDMODE -UXFreeXDGA -UXF86MISC -UXF86DRI \ - -DNXAGENT_SERVER \ - -DNXAGENT_RENDER_CLEANUP \ - -DNXAGENT_FIXKEYS \ - -DNXAGENT_CLIPBOARD \ - -DNXAGENT_WAKEUP=1000 \ - -DNXAGENT_ONSTART \ - -DNXAGENT_ARTSD \ - -UNX_DEBUG_INPUT \ - -DRANDR_10_INTERFACE=1 \ - -DRANDR_12_INTERFACE=1 \ - -DRANDR_13_INTERFACE=1 \ - -DRANDR_14_INTERFACE=1 \ - -DRANDR_15_INTERFACE=1 \ - -DPANORAMIX \ - -UDEBUG_TREE \ - -DX2GO \ - -DSYSTEMFONTDIR=\"$(SYSTEMFONTDIR)\" \ - $(NULL) + -g $(OS_DEFINES) $(EXT_DEFINES) $(NX_DEFINES) \ + -UXF86VIDMODE -UXFreeXDGA -UXF86MISC -UXF86DRI \ + -DNXAGENT_SERVER \ + -DNXAGENT_RENDER_CLEANUP \ + -DNXAGENT_FIXKEYS \ + -DNXAGENT_CLIPBOARD \ + -DNXAGENT_WAKEUP=1000 \ + -DNXAGENT_ONSTART \ + -DNXAGENT_ARTSD \ + -UNX_DEBUG_INPUT \ + -DRANDR_10_INTERFACE=1 \ + -DRANDR_12_INTERFACE=1 \ + -DRANDR_13_INTERFACE=1 \ + -DRANDR_14_INTERFACE=1 \ + -DRANDR_15_INTERFACE=1 \ + -DPANORAMIX \ + -UDEBUG_TREE \ + -DX2GO \ + -DSYSTEMFONTDIR=\"$(SYSTEMFONTDIR)\" \ + $(NULL) all:: $(OBJS) diff --git a/nx-X11/programs/Xserver/hw/nxagent/compext/Imakefile b/nx-X11/programs/Xserver/hw/nxagent/compext/Imakefile index 407baab80..ea34def78 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/compext/Imakefile +++ b/nx-X11/programs/Xserver/hw/nxagent/compext/Imakefile @@ -30,16 +30,16 @@ OBJS = \ Z.o \ $(NULL) - INCLUDES = -I$(SERVERSRC)/include \ - -I$(XBUILDINCDIR) \ - -I../../../../../lib/include/X11 \ - `pkg-config --cflags-only-I pixman-1` \ - $$(pkg-config --exists 'zlib' >/dev/null 2>&1 && pkg-config --cflags-only-I 'zlib') \ - `pkg-config --cflags-only-I libpng` \ - $(NULL) +INCLUDES = -I$(SERVERSRC)/include \ + -I$(XBUILDINCDIR) \ + -I../../../../../lib/include/X11 \ + `pkg-config --cflags-only-I pixman-1` \ + $$(pkg-config --exists 'zlib' >/dev/null 2>&1 && pkg-config --cflags-only-I 'zlib') \ + `pkg-config --cflags-only-I libpng` \ + $(NULL) - LINTLIBS = $(SERVERSRC)/dix/llib-ldix.ln \ - $(NULL) +LINTLIBS = $(SERVERSRC)/dix/llib-ldix.ln \ + $(NULL) NormalLibraryObjectRule() NormalLibraryTarget(compext,$(OBJS)) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit cf5bb486de8b720ab39f7d2930485937e3cd0138 Author: Ulrich Sibiller <uli42@gmx.de> Date: Mon Oct 25 20:38:45 2021 +0200 Screen.c: Fix wrong format specifier --- nx-X11/programs/Xserver/hw/nxagent/Screen.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Screen.c b/nx-X11/programs/Xserver/hw/nxagent/Screen.c index 31b8b68a3..0c1d55f42 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Screen.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Screen.c @@ -375,7 +375,7 @@ FIXME: We'll check for ReparentNotify and LeaveNotify events after XEvent e; #ifdef TEST - fprintf(stderr, "%d: WARNING! Going to wait for the ReparentNotify event [%d].\n", __func__, i); + fprintf(stderr, "%s: WARNING! Going to wait for the ReparentNotify event [%d].\n", __func__, i); #endif if (XCheckTypedWindowEvent(nxagentDisplay, nxagentFullscreenWindow, ReparentNotify, &e)) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 1d9ba187bcea7ba05a9c280a914eb6dc46e3113b Author: Ulrich Sibiller <uli42@gmx.de> Date: Wed Nov 10 23:18:28 2021 +0100 Clipboard.c: re-add callbacks 7aa969cd4ee5fe6ecf74f82442e4a0a7491191c1 dropped calling the callbacks which was a mistake. However, this time we do it without an additional trap. Fixes ArcticaProject/nx-libs#1027 --- nx-X11/programs/Xserver/hw/nxagent/Clipboard.c | 62 ++++++++++++++++++++++---- 1 file changed, 53 insertions(+), 9 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c index f0cef595c..7e78c9758 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c @@ -377,6 +377,11 @@ static void printSelectionStat(int index) fprintf(stderr, " CurrentSelections[].client %s\n", nxagentClientInfoString(curSel.client)); fprintf(stderr, " CurrentSelections[].window [0x%x]\n", curSel.window); + if (curSel.pWin) + fprintf(stderr, " CurrentSelections[].pWin [%p] (-> [0x%x])\n", (void *)curSel.pWin, WINDOWID(curSel.pWin)); + else + fprintf(stderr, " CurrentSelections[].pWin -\n"); + fprintf(stderr, " CurrentSelections[].lastTimeChanged [%u]\n", curSel.lastTimeChanged.milliseconds); return; } @@ -906,12 +911,15 @@ void nxagentHandleSelectionClearFromXServerByIndex(int index) return; } + UpdateCurrentTime(); + TimeStamp time = ClientTimeToServerTime(CurrentTime); + if (IS_LOCAL_OWNER(index)) { /* Send a SelectionClear event to (our) previous owner. */ xEvent x = {0}; x.u.u.type = SelectionClear; - x.u.selectionClear.time = GetTimeInMillis(); + x.u.selectionClear.time = time.milliseconds; x.u.selectionClear.window = lastSelectionOwner[index].window; x.u.selectionClear.atom = CurrentSelections[index].selection; @@ -921,8 +929,11 @@ void nxagentHandleSelectionClearFromXServerByIndex(int index) * Set the root window with the NullClient as selection owner. Our * clients asking for the owner via XGetSelectionOwner() will get * this for an answer. + * Set the CurrentSelection data just as ProcSetSelectionOwner does. */ + CurrentSelections[index].lastTimeChanged = time; CurrentSelections[index].window = screenInfo.screens[0]->root->drawable.id; + CurrentSelections[index].pWin = NULL; CurrentSelections[index].client = NullClient; clearSelectionOwnerData(index); @@ -930,6 +941,22 @@ void nxagentHandleSelectionClearFromXServerByIndex(int index) setClientSelectionStage(index, SelectionStageNone); invalidateTargetCache(index); + + /* + * Now call the callbacks. This is important, especially for + * XFixes events to work properly. Keep in mind that this will + * also call our own callback so we must be prepared there to not + * communicate back to the real X server about this SelectionClear + * event. It already knows about that... + */ + if (SelectionCallback) + { + SelectionInfoRec info = {0}; + + info.selection = &CurrentSelections[index]; + info.kind = SelectionSetOwner; + CallCallbacks(&SelectionCallback, &info); + } } else { @@ -2268,20 +2295,34 @@ void nxagentSetSelectionCallback(CallbackListPtr *callbacks, void *data, return; } + #ifdef DEBUG + printSelectionStat(index); + #endif + + if (CurrentSelections[index].client == NullClient && + CurrentSelections[index].pWin == (WindowPtr)None && + CurrentSelections[index].window == screenInfo.screens[0]->root->drawable.id && + lastSelectionOwner[index].client == NullClient && + lastSelectionOwner[index].window == None && + lastSelectionOwner[index].windowPtr == NULL) + { + /* + * No need to propagate anything to the real X server because this + * callback was triggered by a SelectionClear from the real X + * server. See nxagentHandleSelectionClearFromXServer + */ + #ifdef DEBUG + fprintf(stderr, "%s: aborting callback because it was triggered by nxagent\n", __func__); + #endif + return; + } + /* * Always invalidate the target cache for the relevant selection. * This ensures not having invalid data in the cache. */ invalidateTargetCache(index); - #ifdef DEBUG - fprintf(stderr, "%s: pCurSel->window [0x%x]\n", __func__, pCurSel->window); - fprintf(stderr, "%s: pCurSel->pWin [0x%x]\n", __func__, WINDOWID(pCurSel->pWin)); - fprintf(stderr, "%s: pCurSel->selection [%s]\n", __func__, NameForLocalAtom(pCurSel->selection)); - fprintf(stderr, "%s: pCurSel->lastTimeChanged [%u]\n", __func__, pCurSel->lastTimeChanged.milliseconds); - fprintf(stderr, "%s: pCurSel->client [%s]\n", __func__, nxagentClientInfoString(pCurSel->client)); - #endif - if (nxagentOption(Clipboard) != ClipboardNone) /* FIXME: shouldn't we also check for != ClipboardClient? */ { Selection *pSel = NULL; @@ -2313,6 +2354,9 @@ void nxagentSetSelectionCallback(CallbackListPtr *callbacks, void *data, } else { + #ifdef WARNING + fprintf(stderr, "%s: WARNING: unknown kind [%d] - data corruption?\n", __func__, info->kind); + #endif } if (pSel) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 5323e2ceac684f0f688e81fd1dcda29a30204dc4 Author: Ulrich Sibiller <uli42@gmx.de> Date: Mon Oct 25 20:42:25 2021 +0200 Screen.c, Window.c: use "None" everywhere for FullscreenWindow --- nx-X11/programs/Xserver/hw/nxagent/Screen.c | 2 +- nx-X11/programs/Xserver/hw/nxagent/Window.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Screen.c b/nx-X11/programs/Xserver/hw/nxagent/Screen.c index 0c1d55f42..7998f35f0 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Screen.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Screen.c @@ -988,7 +988,7 @@ Bool nxagentOpenScreen(ScreenPtr pScreen, int argc, char *argv[]) nxagentChangeOption(Fullscreen, False); nxagentChangeOption(AllScreens, False); - nxagentFullscreenWindow = 0; + nxagentFullscreenWindow = None; resetAgentPosition = True; } diff --git a/nx-X11/programs/Xserver/hw/nxagent/Window.c b/nx-X11/programs/Xserver/hw/nxagent/Window.c index 6f98ee57b..b2560a660 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Window.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Window.c @@ -2579,7 +2579,7 @@ void nxagentMapDefaultWindows(void) * Ensure that the fullscreen window gets the focus. */ - if (nxagentFullscreenWindow != 0) + if (nxagentFullscreenWindow != None) { XSetInputFocus(nxagentDisplay, nxagentFullscreenWindow, RevertToParent, CurrentTime); -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit b06b6b1efe84f5759da3cf6f9dfaf1c2c173aeb6 Merge: 1ef24c379 70fde4c74 Author: Mike Gabriel <mike.gabriel@das-netzwerkteam.de> Date: Sat Oct 30 21:20:21 2021 +0200 Merge branch 'uli42-pr/various8' into 3.6.x Attributes GH PR #1025: https://github.com/ArcticaProject/nx-libs/pull/1025 nx-X11/programs/Xserver/Imakefile | 12 ++--- nx-X11/programs/Xserver/hw/nxagent/Args.c | 11 +---- nx-X11/programs/Xserver/hw/nxagent/Clipboard.c | 22 +++++---- nx-X11/programs/Xserver/hw/nxagent/Imakefile | 55 +++++++++++----------- nx-X11/programs/Xserver/hw/nxagent/Screen.c | 4 +- nx-X11/programs/Xserver/hw/nxagent/Window.c | 2 +- .../programs/Xserver/hw/nxagent/compext/Imakefile | 18 +++---- nxdialog/bin/nxdialog | 24 ++++------ 8 files changed, 71 insertions(+), 77 deletions(-) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 7b22b2d40d2d5012d07059579ceeb9f0b8dcf041 Author: Ulrich Sibiller <uli42@gmx.de> Date: Wed Nov 10 23:53:06 2021 +0100 Clipboard.c: use a TimeStamp datatype for lastTimeChanged as dix does just to be consistent with dix. --- nx-X11/programs/Xserver/hw/nxagent/Clipboard.c | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c index 2e47709f7..fe0267ab5 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c @@ -109,7 +109,7 @@ typedef struct _SelectionOwner ClientPtr client; /* local client */ Window window; /* local window id */ WindowPtr windowPtr; /* local window struct */ - Time lastTimeChanged; /* local time (server time) */ + TimeStamp lastTimeChanged; /* local time (server time) */ } SelectionOwner; /* @@ -373,7 +373,7 @@ static void printSelectionStat(int index) fprintf(stderr, " lastSelectionOwner[].windowPtr [%p] (-> [0x%x])\n", (void *)lOwner.windowPtr, WINDOWID(lOwner.windowPtr)); else fprintf(stderr, " lastSelectionOwner[].windowPtr -\n"); - fprintf(stderr, " lastSelectionOwner[].lastTimeChanged [%u]\n", lOwner.lastTimeChanged); + fprintf(stderr, " lastSelectionOwner[].lastTimeChanged [%u]\n", lOwner.lastTimeChanged.milliseconds); fprintf(stderr, " CurrentSelections[].client %s\n", nxagentClientInfoString(curSel.client)); fprintf(stderr, " CurrentSelections[].window [0x%x]\n", curSel.window); @@ -697,7 +697,7 @@ static void initSelectionOwnerData(int index) lastSelectionOwner[index].client = NullClient; lastSelectionOwner[index].window = screenInfo.screens[0]->root->drawable.id; lastSelectionOwner[index].windowPtr = NULL; - lastSelectionOwner[index].lastTimeChanged = GetTimeInMillis(); + lastSelectionOwner[index].lastTimeChanged = ClientTimeToServerTime(CurrentTime); } /* there's no owner on nxagent side anymore */ @@ -706,7 +706,7 @@ static void clearSelectionOwnerData(int index) lastSelectionOwner[index].client = NullClient; lastSelectionOwner[index].window = None; lastSelectionOwner[index].windowPtr = NULL; - lastSelectionOwner[index].lastTimeChanged = GetTimeInMillis(); + lastSelectionOwner[index].lastTimeChanged = ClientTimeToServerTime(CurrentTime); } static void storeSelectionOwnerData(int index, Selection *sel) @@ -714,7 +714,7 @@ static void storeSelectionOwnerData(int index, Selection *sel) lastSelectionOwner[index].client = sel->client; lastSelectionOwner[index].window = sel->window; lastSelectionOwner[index].windowPtr = sel->pWin; - lastSelectionOwner[index].lastTimeChanged = GetTimeInMillis(); + lastSelectionOwner[index].lastTimeChanged = ClientTimeToServerTime(CurrentTime); } static Bool matchSelectionOwner(int index, ClientPtr pClient, WindowPtr pWindow) @@ -2394,16 +2394,7 @@ static void setSelectionOwnerOnXServer(Selection *pSelection) } #ifdef DEBUG - fprintf(stderr, "%s: lastSelectionOwner.client %s -> %s\n", __func__, - nxagentClientInfoString(lastSelectionOwner[index].client), - nxagentClientInfoString(pSelection->client)); - fprintf(stderr, "%s: lastSelectionOwner.window [0x%x] -> [0x%x]\n", __func__, - lastSelectionOwner[index].window, pSelection->window); - fprintf(stderr, "%s: lastSelectionOwner.windowPtr [%p] -> [%p] [0x%x] (serverWindow: [0x%lx])\n", __func__, - (void *)lastSelectionOwner[index].windowPtr, (void *)pSelection->pWin, - pSelection->pWin ? nxagentWindow(pSelection->pWin) : 0, serverWindow); - fprintf(stderr, "%s: lastSelectionOwner.lastTimeChanged [%u]\n", __func__, - lastSelectionOwner[index].lastTimeChanged); + printSelectionStat(index); #endif -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit c8553c70e77317fdafaeb18fb921e346e9a02fb7 Author: Ulrich Sibiller <uli42@gmx.de> Date: Wed Dec 29 15:20:30 2021 +0100 Screen.c: fix handling of AllScreens without a running window manager When used with the old nomachine nxclient (nxclient-3.5.0-9.exe) on Windows for running a desktop session the screen size was wrong (set to 3/4 of the requested size while also activating fullscreen because in that case nomachine's nxwin does not offer a window manager). Fix this by always setting AllScreens to true when there's no window manager, just as it was already done with the FullScreen variable. Fixes: ArcticaProject/nx-libs#1030 --- nx-X11/programs/Xserver/hw/nxagent/Screen.c | 1 + 1 file changed, 1 insertion(+) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Screen.c b/nx-X11/programs/Xserver/hw/nxagent/Screen.c index 7998f35f0..026a8ff98 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Screen.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Screen.c @@ -967,6 +967,7 @@ Bool nxagentOpenScreen(ScreenPtr pScreen, int argc, char *argv[]) #endif nxagentChangeOption(Fullscreen, True); + nxagentChangeOption(AllScreens, True); if (nxagentOption(ClientOs) == ClientOsWinnt && (!nxagentReconnectTrap || nxagentResizeDesktopAtStartup)) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit a8d7b0c8c68d95e465fc05a1f49cfff4e969a0f5 Author: Ulrich Sibiller <uli42@gmx.de> Date: Wed Nov 10 22:32:47 2021 +0100 NXdispatch.c: use defined value CurrentTime instead of 0 also add another comment. --- nx-X11/programs/Xserver/hw/nxagent/NXdispatch.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/NXdispatch.c b/nx-X11/programs/Xserver/hw/nxagent/NXdispatch.c index 5df008bbb..cd57182a1 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/NXdispatch.c +++ b/nx-X11/programs/Xserver/hw/nxagent/NXdispatch.c @@ -215,14 +215,16 @@ InitSelections(void) NumCurrentSelections += nxagentMaxSelections; CurrentSelections = newsels; + /* Note: these are the same values that will be set on a SelectionClear event */ + CurrentSelections[nxagentPrimarySelection].selection = XA_PRIMARY; - CurrentSelections[nxagentPrimarySelection].lastTimeChanged = ClientTimeToServerTime(0); + CurrentSelections[nxagentPrimarySelection].lastTimeChanged = ClientTimeToServerTime(CurrentTime); CurrentSelections[nxagentPrimarySelection].window = screenInfo.screens[0]->root->drawable.id; CurrentSelections[nxagentPrimarySelection].pWin = NULL; CurrentSelections[nxagentPrimarySelection].client = NullClient; CurrentSelections[nxagentClipboardSelection].selection = MakeAtom("CLIPBOARD", 9, 1); - CurrentSelections[nxagentClipboardSelection].lastTimeChanged = ClientTimeToServerTime(0); + CurrentSelections[nxagentClipboardSelection].lastTimeChanged = ClientTimeToServerTime(CurrentTime); CurrentSelections[nxagentClipboardSelection].window = screenInfo.screens[0]->root->drawable.id; CurrentSelections[nxagentClipboardSelection].pWin = NULL; CurrentSelections[nxagentClipboardSelection].client = NullClient; -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 5ec4d7b8ae0c50ef5f7463f4d622597ab9fb37bc Author: Ulrich Sibiller <uli42@gmx.de> Date: Mon Nov 15 10:48:47 2021 +0100 Clipboard.c: fix some comments --- nx-X11/programs/Xserver/hw/nxagent/Clipboard.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c index fe0267ab5..a45cab01e 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c @@ -877,8 +877,9 @@ void invalidateTargetCaches(void) /* * This is called from Events.c dispatch loop on reception of a - * SelectionClear event. We receive this event if someone on the real - * X server claims the selection ownership we have/had. + * SelectionClear or XFixes selection event from the real X + * server. We receive this event if someone on the real X server + * claims the selection ownership we have/had. * Three versions of this routine with different parameter types. */ void nxagentHandleSelectionClearFromXServerByIndex(int index) @@ -1144,7 +1145,7 @@ void nxagentHandleSelectionRequestFromXServer(XEvent *X) * SelectionRequests. Further it can happen that multiple * clients are interested in clipboard content. If we already * know the answer and no intermediate SelectionOwner event - * occured we can answer with the cached list of targets. + * occurred we can answer with the cached list of targets. */ if (targetCache[index].type == FOR_REMOTE && targetCache[index].forRemote) @@ -2642,7 +2643,7 @@ int nxagentConvertSelection(ClientPtr client, WindowPtr pWin, Atom selection, * SelectionRequests. Further it can happen that multiple * clients are interested in clipboard content. If we already * know the answer and no intermediate SelectionOwner event - * occured we can answer with the cached list of targets. + * occurred we can answer with the cached list of targets. */ if (targetCache[index].type == FOR_LOCAL && targetCache[index].forLocal) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 1a1b5e9c2c88752aeef5c039969bcb110cd25dc2 Author: gratuxri <gratuxri@users.noreply.github.com> Date: Sun Jan 16 00:04:17 2022 +0100 Add Ubuntu 22.04 Add Ubuntu Jammy for github actions --- .github/workflows/nx-libs.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/nx-libs.yml b/.github/workflows/nx-libs.yml index 0d70fa970..a31be7405 100644 --- a/.github/workflows/nx-libs.yml +++ b/.github/workflows/nx-libs.yml @@ -19,6 +19,8 @@ jobs: - { container: 'ubuntu:16.04', cc-version: clang } - { container: 'ubuntu:20.04', cc-version: gcc } - { container: 'ubuntu:20.04', cc-version: clang } + - { container: 'ubuntu:22.04', cc-version: gcc } + - { container: 'ubuntu:22.04', cc-version: clang } - { container: 'debian:stable', cc-version: gcc } - { container: 'debian:stable', cc-version: clang } - { container: 'debian:sid', cc-version: gcc } -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit ce978228048bd67707a7600581cb2eebeae4d0bb Author: Ulrich Sibiller <uli42@gmx.de> Date: Thu Nov 11 00:12:07 2021 +0100 Events.c: fix typo in comment --- nx-X11/programs/Xserver/hw/nxagent/Events.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Events.c b/nx-X11/programs/Xserver/hw/nxagent/Events.c index 0340e0b57..7cadb987b 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Events.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Events.c @@ -2893,7 +2893,7 @@ int nxagentHandleXFixesSelectionNotify(XEvent *X) /* * Reception of an owner change on the real X server is - for nxagent - the same as * receiving a SelectionClear event. We just need to tell a (possible) internal - * owner that is no longer owning the selection. + * owner that it is no longer owning the selection. */ nxagentHandleSelectionClearFromXServerByAtom(xfixesEvent -> xfixesselection.selection); } -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit a86957b9173ae5652323027fc9c1dab933648e3b Author: Ulrich Sibiller <uli42@gmx.de> Date: Wed Nov 10 23:40:55 2021 +0100 Clipboard.c: fix typo in array name --- nx-X11/programs/Xserver/hw/nxagent/Clipboard.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c index 7e78c9758..2e47709f7 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Clipboard.c @@ -95,7 +95,7 @@ const int nxagentMaxSelections = 2; /* store the remote atom for all selections */ static XlibAtom *remoteSelectionAtoms = NULL; -static Atom *localSelelectionAtoms = NULL; +static Atom *localSelectionAtoms = NULL; /* * The real owner window (inside nxagent) is stored in @@ -364,7 +364,7 @@ static void printSelectionStat(int index) fprintf(stderr, "selection [%d]:\n", index); fprintf(stderr, " selection Atom local [%d][%s] remote [%ld][%s]\n", - localSelelectionAtoms[index], NameForLocalAtom(localSelelectionAtoms[index]), + localSelectionAtoms[index], NameForLocalAtom(localSelectionAtoms[index]), remoteSelectionAtoms[index], NameForRemoteAtom(remoteSelectionAtoms[index])); fprintf(stderr, " owner side %s\n", IS_LOCAL_OWNER(index) ? "nxagent" : "real X server/none"); fprintf(stderr, " lastSelectionOwner[].client %s\n", nxagentClientInfoString(lOwner.client)); @@ -1465,7 +1465,7 @@ static void endTransfer(int index, Bool success) sendSelectionNotifyEventToClient(lastClients[index].clientPtr, lastClients[index].time, lastClients[index].requestor, - localSelelectionAtoms[index], + localSelectionAtoms[index], lastClients[index].target, success == SELECTION_SUCCESS ? lastClients[index].property : None); } @@ -2557,7 +2557,7 @@ int nxagentConvertSelection(ClientPtr client, WindowPtr pWin, Atom selection, #endif #ifdef DEBUG - fprintf(stderr, "%s: localSelelectionAtoms[%d] [%d] - selection [%d]\n", __func__, index, localSelelectionAtoms[index], selection); + fprintf(stderr, "%s: localSelectionAtoms[%d] [%d] - selection [%d]\n", __func__, index, localSelectionAtoms[index], selection); #endif if ((GetTimeInMillis() - lastClients[index].reqTime) >= CONVERSION_TIMEOUT) @@ -2964,7 +2964,7 @@ XlibAtom translateLocalToRemoteSelection(Atom local) for (int index = 0; index < nxagentMaxSelections; index++) { - if (local == localSelelectionAtoms[index]) + if (local == localSelectionAtoms[index]) { remote = remoteSelectionAtoms[index]; break; @@ -3166,7 +3166,7 @@ WindowPtr nxagentGetClipboardWindow(Atom property) { #ifdef DEBUG fprintf(stderr, "%s: Returning last [%d] selection owner window [%p] (0x%x).\n", __func__, - localSelelectionAtoms[index], + localSelectionAtoms[index], (void *)lastSelectionOwner[index].windowPtr, WINDOWID(lastSelectionOwner[index].windowPtr)); #endif @@ -3244,14 +3244,14 @@ Bool nxagentInitClipboard(WindowPtr pWin) FatalError("nxagentInitClipboard: Failed to allocate memory for the last servers array.\n"); } - SAFE_free(localSelelectionAtoms); - localSelelectionAtoms = (Atom *) calloc(nxagentMaxSelections, sizeof(Atom)); - if (localSelelectionAtoms == NULL) + SAFE_free(localSelectionAtoms); + localSelectionAtoms = (Atom *) calloc(nxagentMaxSelections, sizeof(Atom)); + if (localSelectionAtoms == NULL) { FatalError("nxagentInitClipboard: Failed to allocate memory for the local selection Atoms array.\n"); } - localSelelectionAtoms[nxagentPrimarySelection] = XA_PRIMARY; - localSelelectionAtoms[nxagentClipboardSelection] = MakeAtom(szAgentCLIPBOARD, strlen(szAgentCLIPBOARD), True); + localSelectionAtoms[nxagentPrimarySelection] = XA_PRIMARY; + localSelectionAtoms[nxagentClipboardSelection] = MakeAtom(szAgentCLIPBOARD, strlen(szAgentCLIPBOARD), True); SAFE_free(remoteSelectionAtoms); remoteSelectionAtoms = (XlibAtom *) calloc(nxagentMaxSelections, sizeof(XlibAtom)); -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit ae9a6b2e4d183b36840e82c1d8e72bde0f957096 Merge: b06b6b1ef 1a1b5e9c2 Author: Ulrich Sibiller <uli42@gmx.de> Date: Sat Jan 29 20:32:54 2022 +0100 Merge pull request #1035 from gratuxri/ubuntu_jammy Add Ubuntu 22.04 to github actions .github/workflows/nx-libs.yml | 2 ++ 1 file changed, 2 insertions(+) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 106d6c8d4bbda5e6c5eadf8dec7d8094f026e346 Merge: ae9a6b2e4 c8553c70e Author: Ulrich Sibiller <uli42@gmx.de> Date: Sat Jan 29 20:34:39 2022 +0100 Merge pull request #1033 from uli42/pr/nxclient_geometry Screen.c: fix handling of AllScreens without a running window manager nx-X11/programs/Xserver/hw/nxagent/Screen.c | 1 + 1 file changed, 1 insertion(+) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git
This is an automated email from the git hooks/post-receive script. x2go pushed a commit to branch 3.6.x in repository nx-libs. commit 8129c1f6bea9eac2e7af067414ebcf47c9e2fe51 Merge: 106d6c8d4 a8d7b0c8c Author: Ulrich Sibiller <uli42@gmx.de> Date: Sat Jan 29 20:36:22 2022 +0100 Merge pull request #1028 from uli42/pr/fix_clipboard_callbacks Pr/fix clipboard callbacks nx-X11/programs/Xserver/hw/nxagent/Clipboard.c | 114 ++++++++++++++++-------- nx-X11/programs/Xserver/hw/nxagent/Events.c | 2 +- nx-X11/programs/Xserver/hw/nxagent/NXdispatch.c | 6 +- 3 files changed, 80 insertions(+), 42 deletions(-) -- Alioth's /home/x2go-admin/maintenancescripts/git/hooks/post-receive-email on /srv/git/code.x2go.org/nx-libs.git