mirror of
https://github.com/gnif/LookingGlass.git
synced 2024-11-10 08:38:20 +00:00
[client] main: skip duplicate frames
When a new client connects to our session the host will repeat the last valid frame for the new client. This change will detect this and skip the duplicated frame.
This commit is contained in:
parent
b39f38350f
commit
9dffde74b2
@ -424,6 +424,7 @@ int main_frameThread(void * unused)
|
||||
LGMP_STATUS status;
|
||||
PLGMPClientQueue queue;
|
||||
|
||||
uint32_t frameSerial = 0;
|
||||
uint32_t formatVer = 0;
|
||||
size_t dataSize = 0;
|
||||
LG_RendererFormat lgrFormat;
|
||||
@ -495,6 +496,16 @@ int main_frameThread(void * unused)
|
||||
}
|
||||
|
||||
KVMFRFrame * frame = (KVMFRFrame *)msg.mem;
|
||||
|
||||
// ignore any repeated frames, this happens when a new client connects to
|
||||
// the same host application.
|
||||
if (frame->frameSerial == frameSerial)
|
||||
{
|
||||
lgmpClientMessageDone(queue);
|
||||
continue;
|
||||
}
|
||||
frameSerial = frame->frameSerial;
|
||||
|
||||
struct DMAFrameInfo *dma = NULL;
|
||||
|
||||
if (!g_state.formatValid || frame->formatVer != formatVer)
|
||||
|
Loading…
Reference in New Issue
Block a user