mirror of
https://github.com/libretro/RetroArch.git
synced 2025-02-16 15:39:54 +00:00
![Gregor Richards](/assets/img/avatar_default.png)
Every frame (soon to be configurable), the server does a CRC-32 hash and sends it to the client. If the client finds that its own hash is different from the server's, it requests a fresh savestate. This is a last-ditch effort to sync if all else fails, and it's a best-effort situation. The size of the buffer should assure that we always still have the frame around to CRC, but I imagine there are edge cases where we don't. If you're in an edge case, the CRC is ignored.