Package: synergy
Version: 1.3.1-5
Severity: important
Tags: patch
I got assert when trying switch to another screen with hot key
(super+1 in my case).
===
$ synergys -f -d INFO
INFO: synergys.cpp,1042: Synergy server 1.3.1 on Linux 2.6.31.5 #2 SMP PREEMPT
Mon Nov 2 13:24:08 CET 2009 i686
NOTE: synergys.cpp,500: started server
INFO: CServer.cpp,1141: screen "komar" shape changed
NOTE: CClientListener.cpp,127: accepted client connection
NOTE: CServer.cpp,278: client "klop" has connected
synergys: CServer.cpp:442: void CServer::switchScreen(CBaseClientProxy*,
SInt32, SInt32, bool): Assertion `x >= dx && y >= dy && x < dx + dw && y < dy +
dh' failed.
[1] 9505 abort (core dumped) synergys -f -d INFO
===
My synergy config file:
===
section: screens
# three hosts named: komar, komarik, klop
komar:
komarik:
klop:
halfDuplexCapsLock = true
end
section: links
komar:
right = komarik
left = klop
komarik:
left = komar
klop:
right = komar
end
section: aliases
komar:
127.0.0.1
komarik:
# dell with linux with PPTP connection
192.168.0.222
klop:
# hp with windows with static IP
192.168.0.92
end
section: options
keystroke(super+1) = switchToScreen(klop)
keystroke(super+2) = switchToScreen(komar)
keystroke(super+3) = switchToScreen(komarik)
end
===
Solution is just rebuild packet with -DNDEBUG, all works fine.
-- System Information:
Debian Release: squeeze/sid
APT prefers testing
APT policy: (990, 'testing'), (500, 'oldstable'), (500, 'unstable'), (500,
'stable'), (1, 'experimental')
Architecture: i386 (i686)
Kernel: Linux 2.6.31.5 (SMP w/4 CPU cores; PREEMPT)
Locale: LANG=ru_RU.UTF-8, LC_CTYPE=ru_RU.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages synergy depends on:
ii libc6 2.9-25 GNU C Library: Shared libraries
ii libgcc1 1:4.4.1-4 GCC support library
ii libice6 2:1.0.5-1 X11 Inter-Client Exchange library
ii libsm6 2:1.1.1-1 X11 Session Management library
ii libstdc++6 4.4.1-4 The GNU Standard C++ Library v3
ii libx11-6 2:1.2.2-1 X11 client-side library
ii libxext6 2:1.0.4-1 X11 miscellaneous extension librar
ii libxinerama1 2:1.0.3-2 X11 Xinerama extension library
ii libxtst6 2:1.0.3-1 X11 Testing -- Resource extension
synergy recommends no packages.
synergy suggests no packages.
-- no debconf information
--- synergy-1.3.1.orig/debian/rules 2009-11-07 17:07:36.000000000 +0100
+++ synergy-1.3.1/debian/rules 2009-11-07 17:06:46.000000000 +0100
@@ -30,7 +30,7 @@
config.status: configure
dh_testdir
# Add here commands to configure the package.
- CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)"
./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE)
--prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info
+ CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" LDFLAGS="$(LDFLAGS)"
./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE)
--prefix=/usr --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info
--disable-debug
build: build-stamp
--- synergy-1.3.1.orig/lib/platform/CXWindowsEventQueueBuffer.cpp
2009-11-07 17:07:36.000000000 +0100
+++ synergy-1.3.1/lib/platform/CXWindowsEventQueueBuffer.cpp 2009-11-07
17:06:46.000000000 +0100
@@ -57,8 +57,7 @@
m_userEvent = XInternAtom(m_display, "SYNERGY_USER_EVENT", False);
// set up for pipe hack
- int result = pipe(m_pipefd);
- assert(result == 0);
+ pipe(m_pipefd);
int pipeflags;
pipeflags = fcntl(m_pipefd[0], F_GETFL);