Hopefully fix the crash when updating from 0.9.7 or earlier

For backwards-compatibility reasons, we can only add struct members to the
end. That way, existing callers still can use newer libraries, as the
structs are always allocated by the library (and therefore guaranteed to
have the correct size) and still rely on the same position of the parts
the callers know about.

Reported by Luca Falavigna.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Johannes Schindelin 11 years ago committed by Christian Beier
parent 84be9d3f49
commit 9d0b80059a

@ -192,9 +192,6 @@ typedef struct _rfbClient {
rfbPixelFormat format;
rfbServerInitMsg si;
/* listen.c */
int listenSock;
/* sockets.c */
#define RFB_BUF_SIZE 8192
char buf[RFB_BUF_SIZE];
@ -273,7 +270,6 @@ typedef struct _rfbClient {
SoftCursorLockAreaProc SoftCursorLockArea;
SoftCursorUnlockScreenProc SoftCursorUnlockScreen;
GotFrameBufferUpdateProc GotFrameBufferUpdate;
FinishedFrameBufferUpdateProc FinishedFrameBufferUpdate;
/** the pointer returned by GetPassword will be freed after use! */
GetPasswordProc GetPassword;
MallocFrameBufferProc MallocFrameBuffer;
@ -325,6 +321,11 @@ typedef struct _rfbClient {
/** hook to handle xvp server messages */
HandleXvpMsgProc HandleXvpMsg;
/* listen.c */
int listenSock;
FinishedFrameBufferUpdateProc FinishedFrameBufferUpdate;
} rfbClient;
/* cursor.c */