summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--examples/backchannel.c2
-rw-r--r--libvncserver/rfbserver.c6
-rw-r--r--rfb/rfb.h2
3 files changed, 4 insertions, 6 deletions
diff --git a/examples/backchannel.c b/examples/backchannel.c
index 4db01a8..6a21390 100644
--- a/examples/backchannel.c
+++ b/examples/backchannel.c
@@ -33,7 +33,7 @@ typedef struct backChannelMsg {
uint32_t size;
} backChannelMsg;
-rfbBool enableBackChannel(rfbClientPtr cl, void* data, int encoding)
+rfbBool enableBackChannel(rfbClientPtr cl, void** data, int encoding)
{
if(encoding == rfbBackChannel) {
backChannelMsg msg;
diff --git a/libvncserver/rfbserver.c b/libvncserver/rfbserver.c
index 652b1b7..474351c 100644
--- a/libvncserver/rfbserver.c
+++ b/libvncserver/rfbserver.c
@@ -921,7 +921,7 @@ rfbProcessClientNormalMessage(rfbClientPtr cl)
rfbExtensionData* next = e->next;
if(e->extension->enablePseudoEncoding &&
e->extension->enablePseudoEncoding(cl,
- e->data, (int)enc))
+ &e->data, (int)enc))
/* ext handles this encoding */
break;
e = next;
@@ -938,9 +938,7 @@ rfbProcessClientNormalMessage(rfbClientPtr cl)
while(encs && *encs!=0) {
if(*encs==(int)enc) {
void* data = NULL;
- if(e->newClient)
- e->newClient(cl, &data);
- if(!e->enablePseudoEncoding(cl, data, (int)enc)) {
+ if(!e->enablePseudoEncoding(cl, &data, (int)enc)) {
rfbLog("Installed extension pretends to handle pseudo encoding 0x%x, but does not!\n",(int)enc);
} else {
rfbEnableExtension(cl, e, data);
diff --git a/rfb/rfb.h b/rfb/rfb.h
index 3338f7d..caec018 100644
--- a/rfb/rfb.h
+++ b/rfb/rfb.h
@@ -170,7 +170,7 @@ typedef struct _rfbProtocolExtension {
/* returns TRUE if that pseudo encoding is handled by the extension.
encodingNumber==0 means "reset encodings". */
rfbBool (*enablePseudoEncoding)(struct _rfbClientRec* client,
- void* data, int encodingNumber);
+ void** data, int encodingNumber);
/* returns TRUE if message was handled */
rfbBool (*handleMessage)(struct _rfbClientRec* client,
void* data,