mirror of
https://github.com/citra-emu/citra.git
synced 2024-12-20 07:40:08 +00:00
Attempt to fix network bug
This commit is contained in:
parent
4be752dd98
commit
34af0d3452
@ -504,6 +504,9 @@ void NWM_UDS::HandleDataFrame(const Network::WifiPacket& packet) {
|
|||||||
|
|
||||||
/// Callback to parse and handle a received wifi packet.
|
/// Callback to parse and handle a received wifi packet.
|
||||||
void NWM_UDS::OnWifiPacketReceived(const Network::WifiPacket& packet) {
|
void NWM_UDS::OnWifiPacketReceived(const Network::WifiPacket& packet) {
|
||||||
|
if (!initialized) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
switch (packet.type) {
|
switch (packet.type) {
|
||||||
case Network::WifiPacket::PacketType::Beacon:
|
case Network::WifiPacket::PacketType::Beacon:
|
||||||
HandleBeaconFrame(packet);
|
HandleBeaconFrame(packet);
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
// Refer to the license.txt file included.
|
// Refer to the license.txt file included.
|
||||||
|
|
||||||
#include <chrono>
|
#include <chrono>
|
||||||
|
#include <boost/serialization/binary_object.hpp>
|
||||||
#include <cryptopp/hex.h>
|
#include <cryptopp/hex.h>
|
||||||
#include "common/archives.h"
|
#include "common/archives.h"
|
||||||
#include "common/logging/log.h"
|
#include "common/logging/log.h"
|
||||||
@ -11,6 +12,7 @@
|
|||||||
#include "core/cheats/cheats.h"
|
#include "core/cheats/cheats.h"
|
||||||
#include "core/core.h"
|
#include "core/core.h"
|
||||||
#include "core/savestate.h"
|
#include "core/savestate.h"
|
||||||
|
#include "network/network.h"
|
||||||
#include "video_core/video_core.h"
|
#include "video_core/video_core.h"
|
||||||
|
|
||||||
namespace Core {
|
namespace Core {
|
||||||
@ -23,6 +25,11 @@ struct CSTHeader {
|
|||||||
u64_le time; /// The time when this save state was created
|
u64_le time; /// The time when this save state was created
|
||||||
|
|
||||||
std::array<u8, 216> reserved; /// Make heading 256 bytes so it has consistent size
|
std::array<u8, 216> reserved; /// Make heading 256 bytes so it has consistent size
|
||||||
|
|
||||||
|
template <class Archive>
|
||||||
|
void serialize(Archive& ar, const unsigned int) {
|
||||||
|
ar& boost::serialization::binary_object(this, sizeof(CSTHeader));
|
||||||
|
}
|
||||||
};
|
};
|
||||||
static_assert(sizeof(CSTHeader) == 256, "CSTHeader should be 256 bytes");
|
static_assert(sizeof(CSTHeader) == 256, "CSTHeader should be 256 bytes");
|
||||||
#pragma pack(pop)
|
#pragma pack(pop)
|
||||||
@ -127,6 +134,11 @@ void System::SaveState(u32 slot) const {
|
|||||||
}
|
}
|
||||||
|
|
||||||
void System::LoadState(u32 slot) {
|
void System::LoadState(u32 slot) {
|
||||||
|
if (Network::GetRoomMember().lock()->IsConnected()) {
|
||||||
|
LOG_ERROR(Core, "Unable to load while connected to multiplayer");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
const auto path = GetSaveStatePath(title_id, slot);
|
const auto path = GetSaveStatePath(title_id, slot);
|
||||||
if (!FileUtil::Exists(path)) {
|
if (!FileUtil::Exists(path)) {
|
||||||
LOG_ERROR(Core, "File not exist {}", path);
|
LOG_ERROR(Core, "File not exist {}", path);
|
||||||
|
Loading…
Reference in New Issue
Block a user