Skip to content

Commit

Permalink
Don't recreate directories on each shader dumped
Browse files Browse the repository at this point in the history
Wasn't aware that directories were already created.
  • Loading branch information
Crementif committed Jan 4, 2025
1 parent d774d3f commit 6d6eb06
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 11 deletions.
10 changes: 2 additions & 8 deletions src/Cafe/HW/Latte/Core/LatteShader.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -452,10 +452,7 @@ void LatteShader_DumpShader(uint64 baseHash, uint64 auxHash, LatteDecompilerShad
else if (shader->shaderType == LatteConst::ShaderType::Pixel)
suffix = "ps";

fs::path shaderPath = ActiveSettings::GetUserDataPath("dump/shaders");
std::error_code ec;
fs::create_directories(shaderPath, ec);
FileStream* fs = FileStream::createFile2(shaderPath / fmt::format("{:016x}_{:016x}_{}.txt", baseHash, auxHash, suffix));
FileStream* fs = FileStream::createFile2(ActiveSettings::GetUserDataPath("dump/shaders/{:016x}_{:016x}_{}.txt", baseHash, auxHash, suffix));
if (fs)
{
if (shader->strBuf_shaderSource)
Expand All @@ -482,10 +479,7 @@ void LatteShader_DumpRawShader(uint64 baseHash, uint64 auxHash, uint32 type, uin
else if (type == SHADER_DUMP_TYPE_COMPUTE)
suffix = "compute";

fs::path shaderPath = ActiveSettings::GetUserDataPath("dump/shaders");
std::error_code ec;
fs::create_directories(shaderPath, ec);
FileStream* fs = FileStream::createFile2(shaderPath / fmt::format("{:016x}_{:016x}_{}.bin", baseHash, auxHash, suffix));
FileStream* fs = FileStream::createFile2(ActiveSettings::GetUserDataPath("dump/shaders/{:016x}_{:016x}_{}.bin", baseHash, auxHash, suffix));
if (fs)
{
fs->writeData(programCode, programLen);
Expand Down
4 changes: 1 addition & 3 deletions src/gui/MainWindow.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1113,9 +1113,7 @@ void MainWindow::OnDebugDumpUsedShaders(wxCommandEvent& event)
{
try
{
// create directory
const fs::path path(ActiveSettings::GetUserDataPath());
fs::create_directories(path / "dump" / "shaders");
fs::create_directories(ActiveSettings::GetUserDataPath("dump/shaders"));
}
catch (const std::exception & ex)
{
Expand Down

0 comments on commit 6d6eb06

Please sign in to comment.