Alexei Kotov
2c6d11f95e
Make the horrifying content model flags() game search less horrifying
...
Properly exit early and cache game file check result
2025-05-20 16:15:16 +03:00
Evil Eye
045640303f
Merge branch 'cleanup/menu-interfaces' into 'master'
...
FIX: Correctly describe interface availability of menu scripts
See merge request OpenMW/openmw!4683
2025-05-18 16:45:40 +00:00
Evil Eye
f32d62def8
Merge branch 'setcheckstateesmfile' into 'master'
...
Avoid repeated item(QString) in plugin toggling-related code
See merge request OpenMW/openmw!4678
2025-05-18 16:41:46 +00:00
Dave Corley
b006cb9846
FIX: Correctly describe interface availability of menu scripts
2025-05-17 07:04:23 -07:00
Evil Eye
a7a072e3f8
Merge branch 'qfileinfo' into 'master'
...
Avoid unnecessary file system access in plugin toggling
See merge request OpenMW/openmw!4679
2025-05-17 10:25:02 +00:00
Evil Eye
52b3e0688a
Merge branch 'refreshmodel' into 'master'
...
Fix out-of-bounds index dataChanged calls
See merge request OpenMW/openmw!4677
2025-05-17 10:24:58 +00:00
Alexei Kotov
f7f5665588
Avoid repeated item(QString) in plugin toggling-related code
2025-05-15 23:17:17 +03:00
Alexei Kotov
89d6408587
Avoid unnecessary file system access in plugin toggling
2025-05-15 23:00:08 +03:00
Alexei Kotov
54eea09a9e
Fix out-of-bounds index dataChanged calls
2025-05-15 21:18:10 +03:00
psi29a
6d97ea01b2
Merge branch 'packageusage' into 'master'
...
Update can be used column
See merge request OpenMW/openmw!4670
2025-05-13 20:30:46 +00:00
psi29a
0251b7c820
Merge branch 'uneventful' into 'master'
...
Don't trigger cell change logic when the player isn't changing cells
Closes #8469
See merge request OpenMW/openmw!4657
2025-05-13 20:30:28 +00:00
Evil Eye
9756d3d84f
Update can be used column
2025-05-11 13:38:39 +02:00
Evil Eye
9ea1afedcc
Merge branch 'baiki-isActive-kembalikan-bool' into 'master'
...
self:isActive() returns bool
See merge request OpenMW/openmw!4663
2025-05-09 15:17:08 +00:00
Kuyondo
087349a3e5
bump lua API_REVISION 72 to 73
2025-05-09 19:06:24 +08:00
Alexei Kotov
8966b5292b
Merge branch 'bug8465' into 'master'
...
Bug 8465: Fix anti-aliasing on macOS
Closes #8465
See merge request OpenMW/openmw!4665
2025-05-09 04:45:31 +03:00
thagberg
2bcbb2d01c
Update authors
2025-05-07 22:28:35 -04:00
thagberg
4297ef2f97
Add changelog
2025-05-07 21:55:58 -04:00
thagberg
883f9e5049
Fix anti-aliasing on macOS
...
Blitting to the resolve FBO in OSG::RenderStage was causing a GL_INVALID_FRAMEBUFFER_OPERATION due to a mismatch in attached colorbuffers between the FBOs bound in read and draw slots. This was because the normal attachment was invariantly attached to FBO_Interrupt, but not to other FBOs.
2025-05-07 16:31:22 -04:00
psi29a
1f724cc336
Merge branch 'postprocessingglslversion' into 'master'
...
Fix post-processing shader glsl_version bumping
See merge request OpenMW/openmw!4653
2025-05-07 17:57:15 +00:00
Kuyondo
77bd2250b0
isactive return bool now
2025-05-07 11:24:09 +08:00
Evil Eye
1d736bcf79
Merge branch 'fix_launcher_crash' into 'master'
...
Wait for the reloading cells thread on DataFilesPage destruction (#8445 )
Closes #8445
See merge request OpenMW/openmw!4661
2025-05-06 18:37:04 +00:00
elsid
4a18c23e2d
Wait for the reloading cells thread on DataFilesPage destruction
...
Run a single thread and notify it when it has to reload cells.
2025-05-04 21:59:49 +02:00
Alexei Kotov
0d27dc2336
Merge branch 'fognearisafloat' into 'master'
...
Tiny fix in omwfx docs
See merge request OpenMW/openmw!4656
2025-05-03 21:30:07 +03:00
Evil Eye
57c40bc052
Don't trigger cell change logic when the player isn't changing cells
2025-05-03 16:26:39 +02:00
epochwon
9e80c27002
changed fognear to a float instead of a vec2
2025-05-02 15:42:15 -04:00
psi29a
0e76a6edb5
Merge branch 'custom-config-directory-documentation' into 'master'
...
Add documentation for custom config directories
See merge request OpenMW/openmw!4633
2025-05-01 11:42:57 +00:00
Evil Eye
a37758a165
Merge branch 'jinja' into 'master'
...
Bump jinja2
See merge request OpenMW/openmw!4654
2025-04-30 18:43:29 +00:00
Evil Eye
36e34426bb
Merge branch 'fix_warnings' into 'master'
...
Fix warnings
See merge request OpenMW/openmw!4651
2025-04-30 18:43:14 +00:00
Alexei Kotov
7a0e3aaf11
Bump jinja2
2025-04-29 19:50:02 +03:00
Alexei Kotov
c7f6de472f
Merge branch 'fix_cobertura_path' into 'master'
...
Fix path for junit reports
See merge request OpenMW/openmw!4650
2025-04-29 19:32:36 +03:00
elsid
52281a5e32
Fix path for junit reports
2025-04-29 08:34:09 +02:00
Alexei Kotov
72e73784fb
Fix post-processing shader glsl_version bumping
2025-04-29 04:25:24 +03:00
elsid
b5f8a0ecdb
Fix warning: -Wstring-compare
...
In file included from ../../../components/esm/defs.hpp:7,
from ../../../apps/components_tests/esm/test_fixed_string.cpp:1:
In function 'bool ESM::operator==(const FixedString<capacity>&, const char (&)[rhsSize]) [with long unsigned int capacity = 4; long unsigned int rhsSize = 12]',
inlined from 'virtual void {anonymous}::EsmFixedString_empty_strings_Test::TestBody()' at ../../../apps/components_tests/esm/test_fixed_string.cpp:82:13:
../../../components/esm/esmcommon.hpp:142:85: error: 'int strncmp(const char*, const char*, size_t)' of strings of length 0 and 4 and bound of 4 evaluates to nonzero [-Werror=string-compare]
142 | return strnlen(rhs, rhsSize) == strnlen(lhs.mData, capacity) && std::strncmp(lhs.mData, rhs, capacity) == 0;
| ~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~
2025-04-28 22:07:00 +02:00
elsid
a5826b75e0
Disable -Werror for ASAN builds
...
To avoid warnings like:
In file included from /usr/include/c++/13/regex:50,
from ../../components/lua/yamlloader.cpp:6:
In constructor 'std::function<_Res(_ArgTypes ...)>::function(std::function<_Res(_ArgTypes ...)>&&) [with _Res = bool; _ArgTypes = {char}]',
inlined from 'std::__detail::_State<_Char_type>::_State(std::__detail::_State<_Char_type>&&) [with _Char_type = char]' at /usr/include/c++/13/bits/regex_automaton.h:149:4,
inlined from 'std::__detail::_StateIdT std::__detail::_NFA<_TraitsT>::_M_insert_subexpr_begin() [with _TraitsT = std::__cxx11::regex_traits<char>]' at /usr/include/c++/13/bits/regex_automaton.h:281:24:
/usr/include/c++/13/bits/std_function.h:405:42: error: '*(std::function<bool(char)>*)((char*)&__tmp + offsetof(std::__detail::_StateT, std::__detail::_State<char>::<unnamed>.std::__detail::_State_base::<unnamed>)).std::function<bool(char)>::_M_invoker' may be used uninitialized [-Werror=maybe-uninitialized]
405 | : _Function_base(), _M_invoker(__x._M_invoker)
| ~~~~^~~~~~~~~~
In file included from /usr/include/c++/13/regex:65:
/usr/include/c++/13/bits/regex_automaton.h: In member function 'std::__detail::_StateIdT std::__detail::_NFA<_TraitsT>::_M_insert_subexpr_begin() [with _TraitsT = std::__cxx11::regex_traits<char>]':
/usr/include/c++/13/bits/regex_automaton.h:279:17: note: '__tmp' declared here
279 | _StateT __tmp(_S_opcode_subexpr_begin);
| ^~~~~
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105562 .
2025-04-28 22:07:00 +02:00
elsid
875a45837a
Disable -Warray-bounds due to GCC bug
...
To avoid getting warnings like:
In file included from ../../../extern/sol3/sol/compatibility.hpp:46,
from ../../../extern/sol3/sol/bytecode.hpp:27,
from ../../../extern/sol3/sol/sol.hpp:51,
from ../../../components/lua/luastate.hpp:8,
from ../../../apps/openmw/mwlua/context.hpp:4,
from ../../../apps/openmw/mwlua/soundbindings.hpp:6,
from ../../../apps/openmw/mwlua/soundbindings.cpp:1:
In member function 'void sol::stack::field_getter<T, global, raw, <template-parameter-1-4> >::get(lua_State*, Key&&, int) [with Key = const char (&)[7]; T = char [7]; bool global = false; bool raw = false; <template-parameter-1-4> = void]',
inlined from 'void sol::stack::get_field(lua_State*, Key&&, int) [with bool global = false; bool raw = false; Key = const char (&)[7]]' at ../../../extern/sol3/sol/stack_core.hpp:1210:62,
inlined from 'sol::stack::probe sol::stack::probe_field_getter<T, P, global, raw, <template-parameter-1-5> >::get(lua_State*, Key&&, int) [with Key = const char (&)[7]; T = char [7]; P = float; bool b = false; bool raw = false; <template-parameter-1-5> = void]' at ../../../extern/sol3/sol/stack_probe.hpp:41:21,
inlined from 'sol::stack::probe sol::stack::probe_field_getter<T, P, global, raw, <template-parameter-1-5> >::get(lua_State*, Key&&, int) [with Key = const char (&)[6]; T = char [6]; P = float; bool b = false; bool raw = false; <template-parameter-1-5> = void]' at ../../../extern/sol3/sol/stack_probe.hpp:35:9,
inlined from 'sol::stack::probe sol::stack::probe_get_field(lua_State*, Key&&, int) [with bool global = false; bool raw = false; C = float; Key = const char (&)[6]]' at ../../../extern/sol3/sol/stack_core.hpp:1230:78,
inlined from 'decltype(auto) sol::basic_table_core<<anonymous>, <template-parameter-1-2> >::traverse_get_deep_optional(int&, int, Key&&, Keys&& ...) const [with bool global = false; bool raw = false; sol::detail::insert_mode mode = sol::detail::none; T = sol::optional<float>; Key = const char (&)[6]; Keys = {}; bool top_level = false; ref_t = sol::basic_reference<false>]' at ../../../extern/sol3/sol/table_core.hpp:217:62,
inlined from 'decltype(auto) sol::basic_table_core<<anonymous>, <template-parameter-1-2> >::traverse_get_single(int, Keys&& ...) const [with bool raw = false; Ret = sol::optional<float>; Keys = {const char (&)[6]}; bool top_level = false; ref_t = sol::basic_reference<false>]' at ../../../extern/sol3/sol/table_core.hpp:123:83,
inlined from 'decltype(auto) sol::basic_table_core<<anonymous>, <template-parameter-1-2> >::traverse_get_single_maybe_tuple(int, Key&&) const [with bool raw = false; Ret = sol::optional<float>; Key = const char (&)[6]; bool top_level = false; ref_t = sol::basic_reference<false>]' at ../../../extern/sol3/sol/table_core.hpp:113:41,
inlined from 'decltype(auto) sol::basic_table_core<<anonymous>, <template-parameter-1-2> >::tuple_get(int, Keys&& ...) const [with bool raw = false; Ret = {sol::optional<float>}; Keys = {const char (&)[6]}; bool top_level = false; ref_t = sol::basic_reference<false>]' at ../../../extern/sol3/sol/table_core.hpp:93:56,
inlined from 'decltype(auto) sol::basic_table_core<<anonymous>, <template-parameter-1-2> >::get(Keys&& ...) const [with Ret = {sol::optional<float>}; Keys = {const char (&)[6]}; bool top_level = false; ref_t = sol::basic_reference<false>]' at ../../../extern/sol3/sol/table_core.hpp:422:35,
inlined from 'decltype(auto) sol::basic_table_core<<anonymous>, <template-parameter-1-2> >::get_or(Key&&, T&&) const [with T = float; Key = const char (&)[6]; bool top_level = false; ref_t = sol::basic_reference<false>]' at ../../../extern/sol3/sol/table_core.hpp:428:41,
inlined from '{anonymous}::PlaySoundArgs {anonymous}::getPlaySoundArgs(const sol::optional<sol::basic_table_core<false, sol::basic_reference<false> > >&)' at ../../../apps/openmw/mwlua/soundbindings.cpp:62:42:
../../../extern/sol3/sol/stack_field.hpp:116:49: error: array subscript 'const char [7][0]' is partly outside array bounds of 'const char [6]' [-Werror=array-bounds=]
116 | lua_getfield(L, tableindex, &key[0]);
| ^~~~~~~~~~~~
See https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105438 .
Simplified example: https://godbolt.org/z/ccPje4nK1 .
2025-04-28 22:06:51 +02:00
elsid
891d6fd0ba
Fix warning: -Wmaybe-uninitialized
...
In member function 'ESM::RefId {anonymous}::IdGettingVisitor::operator()(const MWWorld::Ptr&) const',
inlined from 'constexpr _Res std::__invoke_impl(__invoke_other, _Fn&&, _Args&& ...) [with _Res = ESM::RefId; _Fn = {anonymous}::IdGettingVisitor; _Args = {const MWWorld::Ptr&}]' at /usr/include/c++/13/bits/invoke.h:61:36,
inlined from 'constexpr typename std::__invoke_result<_Functor, _ArgTypes>::type std::__invoke(_Callable&&, _Args&& ...) [with _Callable = {anonymous}::IdGettingVisitor; _Args = {const MWWorld::Ptr&}]' at /usr/include/c++/13/bits/invoke.h:96:40,
inlined from 'static constexpr decltype(auto) std::__detail::__variant::__gen_vtable_impl<std::__detail::__variant::_Multi_array<_Result_type (*)(_Visitor, _Variants ...)>, std::integer_sequence<long unsigned int, __indices ...> >::__visit_invoke(_Visitor&&, _Variants ...) [with _Result_type = std::__detail::__variant::__deduce_visit_result<ESM::RefId>; _Visitor = {anonymous}::IdGettingVisitor&&; _Variants = {const std::variant<MWWorld::Ptr, std::pair<ESM::FormId, ESM::RefId> >&}; long unsigned int ...__indices = {0}]' at /usr/include/c++/13/variant:1060:24,
inlined from 'constexpr decltype(auto) std::__do_visit(_Visitor&&, _Variants&& ...) [with _Result_type = __detail::__variant::__deduce_visit_result<ESM::RefId>; _Visitor = {anonymous}::IdGettingVisitor; _Variants = {const variant<MWWorld::Ptr, pair<ESM::FormId, ESM::RefId> >&}]' at /usr/include/c++/13/variant:1815:5,
inlined from 'constexpr std::__detail::__variant::__visit_result_t<_Visitor, _Variants ...> std::visit(_Visitor&&, _Variants&& ...) [with _Visitor = {anonymous}::IdGettingVisitor; _Variants = {const variant<MWWorld::Ptr, pair<ESM::FormId, ESM::RefId> >&}]' at /usr/include/c++/13/variant:1878:34,
inlined from 'ESM::RefId MWScript::GlobalScriptDesc::getId() const' at ../../../apps/openmw/mwscript/globalscripts.cpp:120:26:
../../../apps/openmw/mwscript/globalscripts.cpp:91:35: error: '*(const uint32_t*)((char*)&<unnamed> + offsetof(ESM::RefId, ESM::RefId::mValue.std::variant<ESM::EmptyRefId, ESM::ESM3ExteriorCellRefId, ESM::StringRefId, ESM::FormId, ESM::GeneratedRefId, ESM::IndexRefId>::<unnamed>.std::__detail::__variant::_Variant_base<ESM::EmptyRefId, ESM::ESM3ExteriorCellRefId, ESM::StringRefId, ESM::FormId, ESM::GeneratedRefId, ESM::IndexRefId>::<unnamed>.std::__detail::__variant::_Move_assign_base<true, ESM::EmptyRefId, ESM::ESM3ExteriorCellRefId, ESM::StringRefId, ESM::FormId, ESM::GeneratedRefId, ESM::IndexRefId>::<unnamed>.std::__detail::__variant::_Copy_assign_base<true, ESM::EmptyRefId, ESM::ESM3ExteriorCellRefId, ESM::StringRefId, ESM::FormId, ESM::GeneratedRefId, ESM::IndexRefId>::<unnamed>.std::__detail::__variant::_Move_ctor_base<true, ESM::EmptyRefId, ESM::ESM3ExteriorCellRefId, ESM::StringRefId, ESM::FormId, ESM::GeneratedRefId, ESM::IndexRefId>::<unnamed>.std::__detail::__variant::_Copy_ctor_base<true, ESM::EmptyRefId, ESM::ESM3ExteriorCellRefId, ESM::StringRefId, ESM::FormId, ESM::GeneratedRefId, ESM::IndexRefId>::<unnamed>.std::__detail::__variant::_Variant_storage<true, ESM::EmptyRefId, ESM::ESM3ExteriorCellRefId, ESM::StringRefId, ESM::FormId, ESM::GeneratedRefId, ESM::IndexRefId>::_M_u))' may be used uninitialized [-Werror=maybe-uninitialized]
91 | return ESM::RefId();
| ^
../../../apps/openmw/mwscript/globalscripts.cpp: In member function 'ESM::RefId MWScript::GlobalScriptDesc::getId() const':
../../../apps/openmw/mwscript/globalscripts.cpp:91:35: note: '<anonymous>' declared here
91 | return ESM::RefId();
| ^
2025-04-28 22:00:03 +02:00
Alexei Kotov
55107e0913
Merge branch 'idle_select_to_group_name' into 'master'
...
Use string_view for sIdleSelectToGroupName
See merge request OpenMW/openmw!4646
2025-04-28 03:02:17 +03:00
AnyOldName3
897b502b0f
Field lists for tokens
2025-04-26 19:09:59 +01:00
AnyOldName3
cbf0760adf
Configuration sources to bulleted list
2025-04-26 18:57:57 +01:00
Alexei Kotov
011dfb305c
Merge branch 'navmeshtool_lib' into 'master'
...
Do not build navmeshtool translation units twice
See merge request OpenMW/openmw!4647
2025-04-25 21:40:57 +03:00
elsid
fc4cc3255d
Do not build navmeshtool translation units twice
2025-04-24 23:03:07 +02:00
elsid
f487a6332b
Use string_view for sIdleSelectToGroupName
2025-04-24 23:01:30 +02:00
psi29a
80d6f020ed
Merge branch 'apt_get_retry' into 'master'
...
Retry apt-get update and add-apt-repository
See merge request OpenMW/openmw!4639
2025-04-24 09:07:20 +00:00
psi29a
c7c95c5a85
Merge branch 'fix-bug-8462' into 'master'
...
Set SDL_HINT_MAC_OPENGL_ASYNC_DISPATCH.
Closes #8225 and #8462
See merge request OpenMW/openmw!4641
2025-04-24 09:06:27 +00:00
Sam Kaufman
1948ab21f7
Set SDL_HINT_MAC_OPENGL_ASYNC_DISPATCH.
...
This fixes bugs #8225 and #8462 .
2025-04-23 20:33:56 -07:00
Alexei Kotov
ca3a286cc4
Merge branch 'master' into 'master'
...
FIX: Clarify that `ignore` field of raycast options types are a list and not a single object
See merge request OpenMW/openmw!4613
2025-04-24 02:09:47 +03:00
Evil Eye
ab5070328d
Merge branch 'powershell-multiline-exit' into 'master'
...
Detect failures in multiline PowerShell commands
See merge request OpenMW/openmw!4645
2025-04-23 18:54:47 +00:00
Evil Eye
23522ed314
Merge branch 'missing_enum' into 'master'
...
Add missing TargetPolygonNotFound enum value to lua bindings
See merge request OpenMW/openmw!4643
2025-04-23 18:54:46 +00:00
Evil Eye
b4d5013679
Merge branch 'lua_state' into 'master'
...
Use unique_ptr to handle lua state lifetime
See merge request OpenMW/openmw!4636
2025-04-23 18:54:40 +00:00
Dave Corley
5ef2cf23b3
CLEANUP: Loop param, also, is a bool
2025-04-23 11:20:46 -07:00