1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-12-01 10:04:32 +00:00
Commit graph

8729 commits

Author SHA1 Message Date
AnyOldName3
0a9f5a3c66 Resolve merge conflicts from !4938 and !4956 2025-11-02 18:05:38 +00:00
Andrzej Głuszak
c4b28a39c3 Lua: Return nil instead of empty strings for optional RefId fields
Implement sol_lua_push for ESM::RefId to automatically convert empty
RefIds to nil in Lua. This fixes cell.region and cell.worldSpaceId
returning empty strings, and applies the same pattern consistently
across all Lua bindings.

Removes LuaUtil::serializeRefId as it's no longer needed.

Fixes #8718
2025-11-02 05:08:25 +03:00
Alexei Kotov
fea807821d Don't link to stub Boost.System library (#8754) 2025-10-26 05:16:26 +03:00
Evil Eye
a665980d5e Erase the widget we want to attach rather than the widget we're attaching to 2025-10-23 17:23:37 +02:00
Evil Eye
cc10352def Address comments 2025-10-22 17:27:51 +02:00
Alexei Kotov
ce4606705f Merge branch 'permanentlyinvalid' into 'master'
Remove invalid permanent effects

Closes #8737

See merge request OpenMW/openmw!4950
2025-10-19 00:21:01 +03:00
Alexei Kotov
1f839d264d Merge branch 'fix_qt_build' into 'master'
Do not implicitly convert QByteArray to const char*

See merge request OpenMW/openmw!4941
2025-10-18 18:41:24 +03:00
Alexei Kotov
b7ddc8304b Cleverer filesystem path conversion for QString/QStringView 2025-10-18 13:28:30 +03:00
Evil Eye
b9096410c3 Partially revert 91b1346761 2025-10-17 17:24:19 +02:00
Evil Eye
5242610366 Differentiate between invalid and unapplied effects and stop marking unapplied revertable effects as applied in godmode 2025-10-14 21:26:06 +02:00
Alexei Kotov
c75aed5175 Merge branch 'solidlyrooted' into 'master'
Don't break LuaUi::Element's invariant

Closes #8720

See merge request OpenMW/openmw!4930
2025-10-11 11:59:17 +03:00
Alexei Kotov
afe4edc3c3 Merge branch 'fix_bsatool_afl_findings' into 'master'
Fix AFL findings in bsatool

See merge request OpenMW/openmw!4925
2025-10-11 08:57:48 +03:00
elsid
16abb436e2
Fix potential overflows on reading BSA header 2025-10-06 00:03:12 +02:00
elsid
c87cc643d1
Add tests for BSAFile 2025-10-06 00:02:32 +02:00
elsid
d7f6d7c13c
Add unit tests for CompressedBSAFile 2025-10-06 00:02:32 +02:00
elsid
a111391992
Check for failures after reading from stream in BSA 2025-10-06 00:02:32 +02:00
elsid
801224749f
Handle errors when computing stream size for BSA 2025-10-06 00:02:32 +02:00
elsid
796202f435
Use fail function to verify stream state in BSA
If there is a failure to read the file like unexpected EOF, bad returns
false, but fail returns true. Important for reading number of items more
than the file actually has.
2025-10-06 00:02:32 +02:00
elsid
9a449ed506
Only reserve capacity when reading collections
But do not initialize. If the meta information is invalid and has a big
value, initialization will take significant amount of time but there
might be no actual data in the file because it's too small.
2025-10-06 00:02:31 +02:00
elsid
38f6c5a68b
Properly handle duplicated BSA folders
Deduplicate folders first and then add their files to mFiles.
2025-10-06 00:02:31 +02:00
elsid
c92e321a08
Use std::string_view for BSA file name 2025-10-06 00:02:31 +02:00
elsid
c388fda5e4
Handle empty file name in BSA 2025-10-06 00:02:28 +02:00
elsid
0bae2b14b1
Do not implicitly convert QByteArray to const char*
Operators supporting this conversion can be disabled via
QT_NO_CAST_FROM_BYTEARRAY breaking the build. For example:

https://koschei.fedoraproject.org//package/openmw
https://kojipkgs.fedoraproject.org/work/tasks/5096/137735096/build.log
2025-10-05 23:52:25 +02:00
AnyOldName3
44eb972770 Merge branch 'fix_copy_column_warning' of https://gitlab.com/elsid/openmw into warn-baby-warn-warning-inferno 2025-10-05 18:07:34 +01:00
AnyOldName3
91b1346761 Revert "Support wrapped arthimetic types"
elsid provided an alternative.

This reverts commit b0cf148393.
2025-10-05 18:06:41 +01:00
elsid
d171915b6a
Fix error message 2025-10-05 14:46:40 +02:00
elsid
cfd7f52a2f
Fix C4244 MSVC warning in Sqlite3::copyColumn
Make sure sqlite3_column_double is not called for int64_t and other
integral types and sqlite3_column_int64 is not called for floating point
types.

[363/1189] Building CXX object components\CMakeFiles\components.dir\RelWithDebInfo\detournavigator\navmeshdb.cpp.obj
D:\dev\openmw\components/sqlite3/request.hpp(109): warning C4244: 'argument': conversion from 'double' to 'T', possible loss of data
        with
        [
            T=int64_t
        ]
D:\dev\openmw\components/sqlite3/request.hpp(109): note: the template instantiation context (the oldest one first) is
D:\dev\openmw\components\detournavigator\navmeshdb.cpp(198): note: see reference to function template instantiation 'I Sqlite3::request<DetourNavigator::DbQueries::GetMaxTileId,DetourNavigator::TileId*,>(sqlite3 &,Sqlite3::Statement<DetourNavigator::DbQueries::GetMaxTileId> &,I,size_t)' being compiled
        with
        [
            I=DetourNavigator::TileId *
        ]
D:\dev\openmw\components/sqlite3/request.hpp(262): note: see reference to function template instantiation 'void Sqlite3::getRow<DetourNavigator::TileId>(sqlite3 &,sqlite3_stmt &,T &)' being compiled
        with
        [
            T=DetourNavigator::TileId
        ]
D:\dev\openmw\components/sqlite3/request.hpp(210): note: see reference to function template instantiation 'void Sqlite3::getColumns<std::tuple<T &>>(sqlite3 &,sqlite3_stmt &,std::tuple<T &> &)' being compiled
        with
        [
            T=DetourNavigator::TileId
        ]
D:\dev\openmw\components/sqlite3/request.hpp(203): note: see reference to function template instantiation 'void Sqlite3::getColumnsImpl<1,T>(sqlite3 &,sqlite3_stmt &,T &)' being compiled
        with
        [
            T=std::tuple<DetourNavigator::TileId &>
        ]
D:\dev\openmw\components/sqlite3/request.hpp(190): note: see reference to function template instantiation 'void Sqlite3::copyColumn<T>(sqlite3 &,sqlite3_stmt &,int,int,T &)' being compiled
        with
        [
            T=DetourNavigator::TileId
        ]
2025-10-05 14:39:51 +02:00
Evil Eye
23e9d1ac0c Remove redundant std::floor 2025-10-05 14:19:49 +02:00
AnyOldName3
06cb00bb0b Resolve merge conflicts from !4924 and !4928
luamanagerimp still needs float frameDuration, and reordering a bunch of fields in the scene manager conflicted with changing the type of maxanisotropy.
2025-10-04 23:08:20 +01:00
Alexei Kotov
f60875dd8f Merge branch 'soontm' into 'master'
Bump us up to 0.51

See merge request OpenMW/openmw!4900
2025-10-02 00:01:10 +03:00
AnyOldName3
f5889ba067 Tidying based on review
1.1 was changed to 1.f instead of 1.1f, so that's been fixed.

Reduce the number of casts in RenderingManager::updateProjectionMatrix()
2025-09-29 14:12:29 +01:00
Evil Eye
b2beb4a8f8 Don't break LuaUi::Element's invariant 2025-09-28 21:20:40 +02:00
Evil Eye
000c5d2a08 Ensure error marker assignment is thread safe 2025-09-25 20:47:10 +02:00
AnyOldName3
4eb69427dd One last pair of rule-of-three warnings for Clang 2025-09-25 00:05:35 +01:00
AnyOldName3
7ebb0cf577 Some warnings for Clang 2025-09-24 00:38:36 +01:00
AnyOldName3
536e7b8881 I think MSVC was right and GCC was wrong 2025-09-24 00:37:21 +01:00
AnyOldName3
372e5aa5f8 Format 2025-09-24 00:01:52 +01:00
AnyOldName3
a433114937 Rearrange extern so includes don't need to start with extern/ 2025-09-23 01:04:45 +01:00
AnyOldName3
b6f699d513 First batch of GCC/Ubuntu 24.04 warnings 2025-09-23 00:14:53 +01:00
Evil Eye
4847995861 Bump cache keys 2025-09-22 21:28:52 +02:00
Evil Eye
5308e22f6d Address more conversion warnings in the engine 2025-09-22 18:10:34 +02:00
Evil Eye
478df08433 Address more engine conversion warnings 2025-09-22 13:33:27 +02:00
Evil Eye
1caac90e93 Add btVector3 -> osg::Vec3f helper 2025-09-21 12:14:50 +02:00
elsid
91ccb0fe8d
Use proper naming for BSA File and Hash members 2025-09-20 19:21:17 +02:00
Evil Eye
3ba702690c Require SOL_PROPAGATE_EXCEPTIONS to be off 2025-09-20 16:07:59 +02:00
Evil Eye
b0cf148393 Support wrapped arthimetic types 2025-09-20 12:58:37 +02:00
Evil Eye
ff79c2d826 Turn menu.saveGame into a delayed action 2025-09-20 10:39:43 +00:00
Evil Eye
cb82d37992 Address remaining conversion warnings in components 2025-09-20 11:39:31 +02:00
Evil Eye
a8831651bb Swap arguments 2025-09-18 22:01:24 +02:00
Evil Eye
f7292680d6 Fix most conversion warnings in components 2025-09-18 22:00:55 +02:00