Fix mouse move packets on Gen 5 servers

This commit is contained in:
Cameron Gutman
2016-02-19 12:00:15 -05:00
parent 88edbd8dc1
commit e1473d7a2d
2 changed files with 3 additions and 3 deletions

View File

@@ -17,7 +17,7 @@ typedef struct _NV_KEYBOARD_PACKET {
} NV_KEYBOARD_PACKET, *PNV_KEYBOARD_PACKET;
#define PACKET_TYPE_MOUSE_MOVE 0x08
#define MOUSE_MOVE_MAGIC 0x06000000
#define MOUSE_MOVE_MAGIC 0x06
typedef struct _NV_MOUSE_MOVE_PACKET {
NV_INPUT_HEADER header;
int magic;

View File

@@ -326,10 +326,10 @@ int LiSendMouseMoveEvent(short deltaX, short deltaY) {
holder->packetLength = sizeof(NV_MOUSE_MOVE_PACKET);
holder->packet.mouseMove.header.packetType = htonl(PACKET_TYPE_MOUSE_MOVE);
holder->packet.mouseMove.magic = (MOUSE_MOVE_MAGIC);
holder->packet.mouseMove.magic = MOUSE_MOVE_MAGIC;
// On Gen 5 servers, the header code is incremented by one
if (ServerMajorVersion >= 5) {
holder->packet.mouseMove.magic += 0x01000000;
holder->packet.mouseMove.magic++;
}
holder->packet.mouseMove.deltaX = htons(deltaX);
holder->packet.mouseMove.deltaY = htons(deltaY);