Compare commits

..

1 Commits

Author SHA1 Message Date
DeaTh-G 12f2e6a42a implement fix for potential window size crash 2026-02-03 17:53:29 +01:00
7 changed files with 20 additions and 17 deletions
-2
View File
@@ -351,8 +351,6 @@ if (UNLEASHED_RECOMP_FLATPAK)
"GAME_INSTALL_DIRECTORY=\"/var/data\""
)
endif()
target_compile_definitions(UnleashedRecomp PRIVATE $<$<CONFIG:Debug>:UNLEASHED_RECOMP_DEBUG=1>)
find_package(CURL REQUIRED)
+5 -5
View File
@@ -3145,7 +3145,7 @@ static GuestTexture* CreateTexture(uint32_t width, uint32_t height, uint32_t dep
g_textureDescriptorSet->setTexture(texture->descriptorIndex, texture->texture, RenderTextureLayout::SHADER_READ, texture->textureView.get());
#ifdef UNLEASHED_RECOMP_DEBUG
#ifdef _DEBUG
texture->texture->setName(fmt::format("Texture {:X}", g_memory.MapVirtual(texture)));
#endif
@@ -3162,7 +3162,7 @@ static GuestBuffer* CreateVertexBuffer(uint32_t length)
auto buffer = g_userHeap.AllocPhysical<GuestBuffer>(ResourceType::VertexBuffer);
buffer->buffer = g_device->createBuffer(RenderBufferDesc::VertexBuffer(length, GetBufferHeapType(), RenderBufferFlag::INDEX));
buffer->dataSize = length;
#ifdef UNLEASHED_RECOMP_DEBUG
#ifdef _DEBUG
buffer->buffer->setName(fmt::format("Vertex Buffer {:X}", g_memory.MapVirtual(buffer)));
#endif
return buffer;
@@ -3175,7 +3175,7 @@ static GuestBuffer* CreateIndexBuffer(uint32_t length, uint32_t, uint32_t format
buffer->dataSize = length;
buffer->format = ConvertFormat(format);
buffer->guestFormat = format;
#ifdef UNLEASHED_RECOMP_DEBUG
#ifdef _DEBUG
buffer->buffer->setName(fmt::format("Index Buffer {:X}", g_memory.MapVirtual(buffer)));
#endif
return buffer;
@@ -3213,7 +3213,7 @@ static GuestSurface* CreateSurface(uint32_t width, uint32_t height, uint32_t for
surface->descriptorIndex = g_textureDescriptorAllocator.allocate();
g_textureDescriptorSet->setTexture(surface->descriptorIndex, surface->textureHolder.get(), RenderTextureLayout::SHADER_READ, surface->textureView.get());
#ifdef UNLEASHED_RECOMP_DEBUG
#ifdef _DEBUG
surface->texture->setName(fmt::format("{} {:X}", desc.flags & RenderTextureFlag::RENDER_TARGET ? "Render Target" : "Depth Stencil", g_memory.MapVirtual(surface)));
#endif
@@ -5857,7 +5857,7 @@ static void MakePictureData(GuestPictureData* pictureData, uint8_t* data, uint32
if (LoadTexture(texture, data, dataSize, {}))
{
#ifdef UNLEASHED_RECOMP_DEBUG
#ifdef _DEBUG
texture.texture->setName(reinterpret_cast<char*>(g_memory.Translate(pictureData->name + 2)));
#endif
XXH64_hash_t hash = XXH3_64bits(data, dataSize);
+1 -1
View File
@@ -203,7 +203,7 @@ uint32_t XamShowMessageBoxUI(uint32_t dwUserIndex, be<uint16_t>* wszTitle, be<ui
{
*pResult = cButtons ? cButtons - 1 : 0;
#if UNLEASHED_RECOMP_DEBUG
#if _DEBUG
assert("XamShowMessageBoxUI encountered!" && false);
#elif _WIN32
// This code is Win32-only as it'll most likely crash, misbehave or
+4 -4
View File
@@ -11,7 +11,7 @@
#define LOG_WARNING(str) LOG_IMPL(Warning, __func__, str)
#define LOG_ERROR(str) LOG_IMPL(Error, __func__, str)
#if UNLEASHED_RECOMP_DEBUG
#if _DEBUG
#define LOG_UTILITY(str) LOG_IMPL(Utility, __func__, str)
#else
#define LOG_UTILITY(str)
@@ -21,7 +21,7 @@
#define LOGF_WARNING(str, ...) LOGF_IMPL(Warning, __func__, str, __VA_ARGS__)
#define LOGF_ERROR(str, ...) LOGF_IMPL(Error, __func__, str, __VA_ARGS__)
#if UNLEASHED_RECOMP_DEBUG
#if _DEBUG
#define LOGF_UTILITY(str, ...) LOGF_IMPL(Utility, __func__, str, __VA_ARGS__)
#else
#define LOGF_UTILITY(str, ...)
@@ -33,7 +33,7 @@
#define LOGN_WARNING(str) LOG_IMPL(Warning, "*", str)
#define LOGN_ERROR(str) LOG_IMPL(Error, "*", str)
#if UNLEASHED_RECOMP_DEBUG
#if _DEBUG
#define LOGN_UTILITY(str) LOG_IMPL(Utility, "*", str)
#else
#define LOGN_UTILITY(str)
@@ -43,7 +43,7 @@
#define LOGFN_WARNING(str, ...) LOGF_IMPL(Warning, "*", str, __VA_ARGS__)
#define LOGFN_ERROR(str, ...) LOGF_IMPL(Error, "*", str, __VA_ARGS__)
#if UNLEASHED_RECOMP_DEBUG
#if _DEBUG
#define LOGFN_UTILITY(str, ...) LOGF_IMPL(Utility, "*", str, __VA_ARGS__)
#else
#define LOGFN_UTILITY(str, ...)
+1 -1
View File
@@ -3,7 +3,7 @@
#define UNLEASHED_RECOMP_VERSION_BIN @WIN32_VERSION_BINARY@
#define UNLEASHED_RECOMP_VERSION_STR "@WIN32_VERSION_STRING@"
#ifdef UNLEASHED_RECOMP_DEBUG
#ifdef _DEBUG
#define UNLEASHED_RECOMP_FILE_FLAGS VS_FF_DEBUG
#else
#define UNLEASHED_RECOMP_FILE_FLAGS 0
+8 -3
View File
@@ -1255,9 +1255,14 @@ static void DrawConfigOptions()
case 3: // VIDEO
{
DrawConfigOption(rowCount++, yOffset, &Config::WindowSize,
!Config::Fullscreen, &Localise("Options_Desc_NotAvailableFullscreen"),
0, 0, (int32_t)GameWindow::GetDisplayModes().size() - 1, false);
auto displayModeCount = (int32_t)GameWindow::GetDisplayModes().size();
auto canChangeWindowSize = !Config::Fullscreen && displayModeCount > 1;
auto windowSizeReason = &Localise("Options_Desc_NotAvailableFullscreen");
if (!Config::Fullscreen && displayModeCount <= 1)
windowSizeReason = &Localise("Options_Desc_NotAvailableHardware");
DrawConfigOption(rowCount++, yOffset, &Config::WindowSize, canChangeWindowSize, windowSizeReason, 0, 0, displayModeCount - 1, false);
auto displayCount = GameWindow::GetDisplayCount();
auto canChangeMonitor = Config::Fullscreen && displayCount > 1;
+1 -1
View File
@@ -817,7 +817,7 @@ void Config::Load()
{
def->ReadValue(toml);
#if UNLEASHED_RECOMP_DEBUG
#if _DEBUG
LOGFN_UTILITY("{} (0x{:X})", def->GetDefinition().c_str(), (intptr_t)def->GetValue());
#endif
}