dolphin/Source/Core/Core/HW
Vicki Pfau f6e9003ddc SI/DeviceGBA: Ensure data socket isn't backed up
When reading a reply from a message sent to the data socket there is
the possibility that the other side gets sent multiple messages
before replying to any of them, which can lead to multiple replies
sent in a row. Though this only happens when things time out, it's
quite possible for these timeouts to happen or build up over time,
especially when initiating the connection.

This change makes sure to flush any pending bytes that have not been
read yet out of the socket after a successful POLL reply is received,
since that is the most common time when backups occur, and as well as
using the exact number of bytes in an expected reply, to ensure
the received data and the message it's replying to do not get out of
sync.
2021-03-02 18:53:44 -08:00
..
DSPHLE rename Common/File to Common/IOFile 2021-01-27 14:29:48 -08:00
DSPLLE rename Common/File to Common/IOFile 2021-01-27 14:29:48 -08:00
DVD IOS: Use less ambiguous names for classes 2021-02-12 21:40:31 +01:00
EXI rename Common/File to Common/IOFile 2021-01-27 14:29:48 -08:00
GCMemcard rename Common/File to Common/IOFile 2021-01-27 14:29:48 -08:00
SI SI/DeviceGBA: Ensure data socket isn't backed up 2021-03-02 18:53:44 -08:00
WiimoteCommon Revert "msvc: temporary workaround for C4789 false positive" 2021-01-09 19:22:36 -08:00
WiimoteEmu rename Core/Analytics to Core/DolphinAnalytics 2021-01-27 14:29:47 -08:00
WiimoteReal rename ciface::Wiimote to ciface::WiimoteController 2021-01-27 14:29:48 -08:00
AddressSpace.cpp Core/AddressSpace: Return null accessors when no game is running to prevent out-of-bounds memory accesses. 2020-12-13 06:21:07 +01:00
AddressSpace.h Core/AddressSpace: Return null accessors when no game is running to prevent out-of-bounds memory accesses. 2020-12-13 06:21:07 +01:00
AudioInterface.cpp Core: Convert missed log calls over to fmt 2020-11-23 12:20:02 -05:00
AudioInterface.h AudioCommon: Get initial sample rates from AudioInterface 2020-09-06 15:37:20 +02:00
CPU.cpp Core/CPU: Make use of type deduction for scoped locks 2019-08-18 17:39:27 +02:00
CPU.h Core: Support asynchronously executing functions on the CPU thread 2019-07-24 04:08:19 +10:00
DSP.cpp DSP: Fix write masks on AUDIO_*/AR_* MMIO registers 2020-12-30 01:34:48 -08:00
DSP.h Revert "DSP: ARAM cleanup experiments" 2019-09-02 01:47:50 -04:00
GCKeyboard.cpp ControllerInterface: Allow hotplug callbacks to be unregistered and don't reload the entire config from the ini file on hotplug, just update the control references. This should fix a crash on shutdown on Android. 2019-01-10 18:32:16 -06:00
GCKeyboard.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
GCKeyboardEmu.cpp InputCommon: Wrap remaining invalid default input expressions around `` 2021-01-17 17:37:13 -06:00
GCKeyboardEmu.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
GCPad.cpp ControllerInterface: Allow hotplug callbacks to be unregistered and don't reload the entire config from the ini file on hotplug, just update the control references. This should fix a crash on shutdown on Android. 2019-01-10 18:32:16 -06:00
GCPad.h rename InputCommon/ControllerInterface/Device to CoreDevice 2021-01-27 14:29:48 -08:00
GCPadEmu.cpp InputCommon: Wrap remaining invalid default input expressions around `` 2021-01-17 17:37:13 -06:00
GCPadEmu.h HW/GCPadEmu: Adjust gate radius values to more closely match the real hardware. 2020-07-19 09:45:33 -05:00
GPFifo.cpp Jit64: Inline GP fast check in Cleanup. 2017-11-18 17:43:38 +01:00
GPFifo.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
HW.cpp Core/AddressSpace: Return null accessors when no game is running to prevent out-of-bounds memory accesses. 2020-12-13 06:21:07 +01:00
HW.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
Memmap.cpp Core/Memmap: Give more detailed error messages if memory mapping fails. 2021-03-01 19:11:00 +01:00
Memmap.h Configurable MEM1 and MEM2 sizes at runtime via Dolphin.ini 2020-04-28 12:10:50 -05:00
MemoryInterface.cpp Core: Remove unnecessary includes 2017-06-15 18:52:22 -04:00
MemoryInterface.h
MMIO.cpp Core: Convert logging over to fmt pt.2 2020-11-20 10:05:44 -05:00
MMIO.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
MMIOHandlers.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
ProcessorInterface.cpp IOS: Use less ambiguous names for classes 2021-02-12 21:40:31 +01:00
ProcessorInterface.h ProcessorInterface: Remove prefixed underscores from parameters 2018-04-09 03:21:59 -04:00
Sram.cpp rename Common/File to Common/IOFile 2021-01-27 14:29:48 -08:00
Sram.h mx sram: replace union-with-byte-array with operator[] to make gcc happy. 2018-10-01 00:00:20 -07:00
StreamADPCM.cpp Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
StreamADPCM.h Reformat repo to clang-format 7.0 rules 2019-05-06 18:48:04 +00:00
SystemTimers.cpp IOS: Use less ambiguous names for classes 2021-02-12 21:40:31 +01:00
SystemTimers.h Core: Fix time base unit mixup 2021-02-20 14:18:21 +01:00
VideoInterface.cpp Core: Convert logging over to fmt pt.2 2020-11-20 10:05:44 -05:00
VideoInterface.h VideoCommon: Don't round the refresh rate 2020-07-28 21:01:38 +02:00
WII_IPC.cpp Core: Convert missed log calls over to fmt 2020-11-23 12:20:02 -05:00
WII_IPC.h Core: Convert logging over to fmt pt.2 2020-11-20 10:05:44 -05:00
Wiimote.cpp IOS: Use less ambiguous names for classes 2021-02-12 21:40:31 +01:00
Wiimote.h BTEmu/Wiimote: Cleanups/Fixes. 2020-08-16 11:38:13 -05:00
WiiSave.cpp rename Common/File to Common/IOFile 2021-01-27 14:29:48 -08:00
WiiSave.h Android: Add "Import Wii Save" 2021-01-27 20:10:06 +01:00
WiiSaveStructs.h WiiSave: Delete existing save, if any, before importing one. 2021-01-02 17:46:12 +01:00