From 06c83be7e3b65a43ce78776f205d3589cb18852b Mon Sep 17 00:00:00 2001 From: Ulrich Sibiller Date: Fri, 10 Mar 2017 22:58:27 +0100 Subject: Keystroke.c: handle parsing state in parse_keystroke_file() --- nx-X11/programs/Xserver/hw/nxagent/Keystroke.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) (limited to 'nx-X11/programs/Xserver') diff --git a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c index 7148cadf0..28d6d2467 100644 --- a/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c +++ b/nx-X11/programs/Xserver/hw/nxagent/Keystroke.c @@ -249,6 +249,11 @@ static void parse_keystroke_file(void) char *homefile = "/.nx/config/keystrokes.cfg"; char *etcfile = "/etc/nxagent/keystrokes.cfg"; + if (nxagentKeystrokeFileParsed) + return; + + nxagentKeystrokeFileParsed = True; + if (nxagentX2go) { homefile = "/.x2go/config/keystrokes.cfg"; etcfile = "/etc/x2go/keystrokes.cfg"; @@ -390,11 +395,7 @@ static enum nxagentSpecialKeystroke find_keystroke(XKeyEvent *X) struct nxagentSpecialKeystrokeMap *cur = map; - if (! nxagentKeystrokeFileParsed) - { - parse_keystroke_file(); - nxagentKeystrokeFileParsed = True; - } + parse_keystroke_file(); enum nxagentSpecialKeystroke ret = KEYSTROKE_NOTHING; -- cgit v1.2.3