summaryrefslogtreecommitdiffstats
path: root/libvncserver/main.h
diff options
context:
space:
mode:
authorMichele Calgaro <michele.calgaro@yahoo.it>2023-11-22 13:02:35 +0900
committerMichele Calgaro <michele.calgaro@yahoo.it>2024-01-11 18:30:57 +0900
commit90abc79efa3d7ca6ac10c5f3bc329ec128008523 (patch)
treee80a2ba2cb7d819db6c07ccfb6ca5a6d1947e327 /libvncserver/main.h
parent6d6d6edb1d0cde2267d269bb9b172c9cd2b6767e (diff)
downloadlibtdevnc-90abc79efa3d7ca6ac10c5f3bc329ec128008523.tar.gz
libtdevnc-90abc79efa3d7ca6ac10c5f3bc329ec128008523.zip
krfb: fix termination and syncing of threads on exit. This resolves issue #2.
Signed-off-by: Michele Calgaro <michele.calgaro@yahoo.it>
Diffstat (limited to 'libvncserver/main.h')
-rw-r--r--libvncserver/main.h24
1 files changed, 21 insertions, 3 deletions
diff --git a/libvncserver/main.h b/libvncserver/main.h
index 6c31980..1edd4cc 100644
--- a/libvncserver/main.h
+++ b/libvncserver/main.h
@@ -21,9 +21,15 @@ class ControlPipeHandlerObject : public TQObject
public slots:
void run();
+ void requestExit() { d.requestExit = true; }
public:
- rfbScreenInfoPtr d;
+ struct Data
+ {
+ rfbScreenInfoPtr rfbData;
+ bool requestExit;
+ };
+ Data d;
};
class OnHoldClientHandlerObject : public TQObject
@@ -36,9 +42,15 @@ class OnHoldClientHandlerObject : public TQObject
public slots:
void run();
+ void requestExit() { d.requestExit = true; }
public:
- rfbClientPtr d;
+ struct Data
+ {
+ rfbClientPtr rfbData;
+ bool requestExit;
+ };
+ Data d;
};
class ClientOutputHandlerObject : public TQObject
@@ -51,9 +63,15 @@ class ClientOutputHandlerObject : public TQObject
public slots:
void run();
+ void requestExit() { d.requestExit = true; }
public:
- rfbClientPtr d;
+ struct Data
+ {
+ rfbClientPtr rfbData;
+ bool requestExit;
+ };
+ Data d;
};
#endif // _MAIN_H