Crash log: Show type of last sync record if applicable

pull/590/head
Jonathan G Rennison 9 months ago
parent 8f209b0dc4
commit 66ddbf94b0

@ -25,6 +25,7 @@
#include "gfx_func.h"
#include "network/network.h"
#include "network/network_survey.h"
#include "network/network_sync.h"
#include "language.h"
#include "fontcache.h"
#include "news_gui.h"
@ -564,6 +565,23 @@ char *CrashLog::FillCrashLog(char *buffer, const char *last)
});
#endif
if (_networking) {
buffer = this->TryCrashLogFaultSection(buffer, last, "network sync", [](CrashLog *self, char *buffer, const char *last) -> char * {
if (IsGameThread() && _record_sync_records && !_network_sync_records.empty()) {
uint total = 0;
for (uint32 count : _network_sync_record_counts) {
total += count;
}
NetworkSyncRecordEvents event = NSRE_BEGIN;
if (_network_sync_records.size() > total + 1) {
event = (NetworkSyncRecordEvents)(_network_sync_records.back().frame);
}
buffer += seprintf(buffer, last, "Last sync record type: %s\n\n", GetSyncRecordEventName(event));
}
return buffer;
});
}
buffer = this->TryCrashLogFaultSection(buffer, last, "thread", [](CrashLog *self, char *buffer, const char *last) -> char * {
if (IsNonMainThread()) {
buffer += seprintf(buffer, last, "Non-main thread (");

Loading…
Cancel
Save