1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-10-27 18:56:39 +00:00
Commit graph

36772 commits

Author SHA1 Message Date
Alexei Kotov
2708bfab9f Merge branch 'erasethechildren' into 'master'
Erase the widget we want to attach rather than the widget we're attaching to

Closes #8758

See merge request OpenMW/openmw!4962
2025-10-24 19:17:50 +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
Alexei Kotov
2e67c8b47f Merge branch 'patch-1' into 'master'
fix typo in record-filters.rst

See merge request OpenMW/openmw!4959
2025-10-19 13:40:29 +03: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
081cf2cf25 Merge branch 'noitemview' into 'master'
Fix UB in item view controller refocusing during redraw

Closes #8724

See merge request OpenMW/openmw!4948
2025-10-18 18:55:03 +03:00
Alexei Kotov
9caafb4033 Merge branch 'gcovr' into 'master'
Downgrade gcovr to 8.3

See merge request OpenMW/openmw!4957
2025-10-18 18:47:07 +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
hbschr
a08ffb7ad7 fix typo in record-filters.rst 2025-10-18 11:21:03 +00:00
Alexei Kotov
b7ddc8304b Cleverer filesystem path conversion for QString/QStringView 2025-10-18 13:28:30 +03:00
Evil Eye
03a46650af Merge branch 'stast_handler' into 'master'
Use abbreviation for GUI stat name

See merge request OpenMW/openmw!4952
2025-10-16 17:46:28 +00:00
Evil Eye
eb04049268 Downgrade gcovr to 8.3 2025-10-16 18:44:07 +02:00
Alexei Kotov
2c0205db79 Merge branch 'fix_msvc_tests' into 'master'
Fix tests for MSVC

See merge request OpenMW/openmw!4951
2025-10-15 21:02:06 +03: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
Evil Eye
34ff702212 Allow skills to be fortified by absorbing from a creature 2025-10-14 20:33:00 +02:00
Andrei Kortunov
ed15542d8b Use abbreviation for GUI stat name 2025-10-14 11:14:00 +04:00
Alexei Kotov
6e8322c466 Merge branch 'focus_unify' into 'master'
Unify focus object terminology

See merge request OpenMW/openmw!4949
2025-10-13 23:19:52 +03:00
Alexei Kotov
85e35cbf58 Merge branch 'i-could-be-further-away' into 'master'
CLEANUP: Always use squared distance in types.Actor.isInActorsProcessingRange

See merge request OpenMW/openmw!4945
2025-10-13 23:18:31 +03:00
Dave Corley
7e41d81c9e Always use squared distance in types.Actor.isInActorsProcessingRange 2025-10-13 23:18:31 +03:00
elsid
7bf1ea32b0
Disable not working tests for MSVC
std::streambuf in MSVC does not support buffers larger than 2**31 - 1:
https://developercommunity.visualstudio.com/t/stdbasic-stringbuf-is-broken/290124

Simple test to check if it works:

TEST(IMemStreamTest, shouldRead)
{
    std::string src(std::numeric_limits<uint32_t>::max() / 2 + 1, '\0');
    Files::IMemStream stream(src.data(), src.size());
    std::string dst(src.size(), '\0');
    stream.read(dst.data(), src.size());
    EXPECT_FALSE(stream.fail()) << std::generic_category().message(errno);
}
2025-10-12 11:11:24 +02:00
elsid
ab4637f6c7
Do not rely on std::string::reserve
Passing an object with capacity through std::ostringstream may change
its capacity. Use malloc instead to make sure the memory is allocated.
2025-10-12 11:11:22 +02:00
Evil Eye
f783993c56 Don't mark skill affecting effects as invalid if the target is a creature 2025-10-11 14:47:45 +02:00
Evil Eye
b905836f45 Remove invalid permanent effects 2025-10-11 13:21:22 +02:00
Andrei Kortunov
48e1ee3ac7 Unify focus object terminology 2025-10-11 13:01:26 +04: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
1afbc6ba63 Fix UB in item view controller refocusing during redraw (#8724)
std::clamp's upper bound goes negative when there are no items
2025-10-11 10:26:41 +03:00
Alexei Kotov
3f6ecc4de1 Merge branch 'shield_sheath' into 'master'
Fix shield equip and unequip animations, add docs for shield sheathing feature

See merge request OpenMW/openmw!4936
2025-10-11 09:13:30 +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
Alexei Kotov
39b22cbcdf Merge branch 'fix_copy_column_warning' into 'master'
Fix C4244 MSVC warning in Sqlite3::copyColumn

See merge request OpenMW/openmw!4939
2025-10-11 07:11:29 +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
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
Alexei Kotov
d8ef4fcde2 Changelog for #8734 2025-10-04 23:13:04 +03:00
Andrei Kortunov
d9b441ccaa Fix shield equip and unequip animations, add docs for shield sheathing feature (bug 8734) 2025-10-04 16:07:15 +04:00
Alexei Kotov
ef05e089ab Merge branch 'encucumberance' into 'master'
Update encumbrance unconditionally (#8729)

Closes #8729

See merge request OpenMW/openmw!4934
2025-10-04 11:14:35 +03:00
Alexei Kotov
d9bcc3dc4f Merge branch 'kelapasawit8123' into 'master'
Make weapon usage less restrictive

See merge request OpenMW/openmw!4906
2025-10-03 21:03:14 +03:00
Alexei Kotov
5c4821bed7 Merge branch 'override-all-the-things' into 'master'
DOC: Document data-local

See merge request OpenMW/openmw!4929
2025-10-03 00:28:27 +03:00
Dave Corley
fd7e6b6bcb DOC: Document data-local 2025-10-03 00:28:26 +03:00
Alexei Kotov
0eb1a79b00 Update encumbrance unconditionally (#8729)
The flag is only set when items are physically added/removed, which doesn't happen during barter
2025-10-02 08:29:24 +03:00
Alexei Kotov
9b76739489 Merge branch 'handlers' into 'master'
Deduplicate event handling code

See merge request OpenMW/openmw!4914
2025-10-02 00:55:23 +03: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