summaryrefslogtreecommitdiffstats
path: root/x11vnc/x11vnc.c
diff options
context:
space:
mode:
authorrunge <runge@karlrunge.com>2009-05-21 10:57:03 -0400
committerrunge <runge@karlrunge.com>2009-05-21 10:57:03 -0400
commit94d058b35f075cec2d6e8b6e37ee1a94086ea3f8 (patch)
tree6cec0620ab70b5db6b33645dbcac1071f3c7a556 /x11vnc/x11vnc.c
parent804335f9d296440bb708ca844f5d89b58b50b0c6 (diff)
downloadlibtdevnc-94d058b35f075cec2d6e8b6e37ee1a94086ea3f8.tar.gz
libtdevnc-94d058b35f075cec2d6e8b6e37ee1a94086ea3f8.zip
Thread safety. Fix -clip -in -rawfb. Try to avoid Xorg stuck
key bug.
Diffstat (limited to 'x11vnc/x11vnc.c')
-rw-r--r--x11vnc/x11vnc.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/x11vnc/x11vnc.c b/x11vnc/x11vnc.c
index 35e0fc3..bbe3e21 100644
--- a/x11vnc/x11vnc.c
+++ b/x11vnc/x11vnc.c
@@ -2476,6 +2476,14 @@ int main(int argc, char* argv[]) {
}
continue;
}
+ if (strstr(arg, "-nounixpw") == arg) {
+ unixpw = 0;
+ unixpw_nis = 0;
+ if (unixpw_list) {
+ unixpw_list = NULL;
+ }
+ continue;
+ }
if (!strcmp(arg, "-vencrypt")) {
char *s;
CHECK_ARGC
@@ -3513,6 +3521,9 @@ int main(int argc, char* argv[]) {
#else
if (getenv("X11VNC_THREADED")) {
use_threads = 1;
+ } else if (1) {
+ /* we re-enable it due to threaded mode bugfixes. */
+ use_threads = 1;
} else {
rfbLog("\n");
rfbLog("The -threads mode is unstable and not tested or maintained.\n");
@@ -4331,7 +4342,7 @@ int main(int argc, char* argv[]) {
}
}
}
- if (use_threads) {
+ if (use_threads && !getenv("UNIXPW_THREADS")) {
if (! quiet) {
rfbLog("disabling -threads under -unixpw\n");
}
@@ -4514,6 +4525,7 @@ int main(int argc, char* argv[]) {
X_INIT;
SCR_INIT;
+ CLIENT_INIT;
/* open the X display: */
if (auth_file) {