1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2026-01-13 21:30:54 +00:00
openmw/apps/components_tests
AnyOldName3 16efa6e5b5 Support long paths on Windows
Apparently we'd never bothered opting in, despite nearly everything in all out apps being entirely compatible and designed with long paths in mind.

GetModuleFileNameW is a bit awkward as it's just about the only Win32 function that returns the minimum of the buffer size and the string size - nearly everything else returns the full size even if it won't fit, so you can pass it a null pointer and a size of zero, and it'll tell you how much space you need to allocate.

I pretty much just copied the mostly-working long-path-friendly call site in the crash catcher to windowspath.cpp, but I also noticed that if the function failed and returned zero, the original implementation would loop forever, so I fixed that.

There was some code that could be ditched from the catch monitor as \\?\ is a prefix you can use to opt into long paths for a single API call instead of using the manifest to set it everywhere.
2026-01-07 15:12:22 +00:00
..
bsa Disable not working tests for MSVC 2025-10-12 11:11:24 +02:00
detournavigator Fix conversion warnings in components_tests 2025-09-20 12:12:31 +02:00
esm Merge branch 'filenameexceptions' into 'master' 2025-07-01 20:45:33 +00:00
esm3 Use pathhelpers to populate Collections 2025-09-01 17:57:44 +02:00
esm4 Split openmw_test_suite into openmw and components tests 2024-06-10 23:12:14 +02:00
esmloader Rename components/to_utf8 directory and files to follow naming conventions 2025-02-23 00:18:07 +03:00
esmterrain Split openmw_test_suite into openmw and components tests 2024-06-10 23:12:14 +02:00
files Merge branch 'filenameexceptions' into 'master' 2025-07-01 20:45:33 +00:00
fx Account for numeric precision and infinities. Also pretend to be more like GLSL 2025-08-18 19:52:28 +02:00
lua Reimplement tests in Lua 2025-12-23 17:47:29 +01:00
misc Add extension path type 2025-12-08 20:38:23 +01:00
nif Make NIF base record members conform to the naming conventions 2025-12-16 13:23:30 +03:00
nifloader Make NIF base record members conform to the naming conventions 2025-12-16 13:23:30 +03:00
nifosg recIndex => recordIndex 2025-12-21 00:40:12 +03:00
resource Ensure error marker assignment is thread safe 2025-09-25 20:47:10 +02:00
sceneutil Split openmw_test_suite into openmw and components tests 2024-06-10 23:12:14 +02:00
serialization Split openmw_test_suite into openmw and components tests 2024-06-10 23:12:14 +02:00
settings Split openmw_test_suite into openmw and components tests 2024-06-10 23:12:14 +02:00
shader Use temporary directory for tests output 2025-03-23 23:33:40 +01:00
sqlite3 Split openmw_test_suite into openmw and components tests 2024-06-10 23:12:14 +02:00
toutf8 Rename components/to_utf8 directory and files to follow naming conventions 2025-02-23 00:18:07 +03:00
vfs Fix NormalizedView::stem to include dots 2025-12-12 23:14:57 +01:00
CMakeLists.txt Support long paths on Windows 2026-01-07 15:12:22 +00:00
main.cpp Use temporary directory for tests output 2025-03-23 23:33:40 +01:00