forked from Felk/dolphin
-
Notifications
You must be signed in to change notification settings - Fork 3
Open
Description
The following sample script will generate freezes when running the script
from dolphin import savestate
from Modules import mkw_utils
@event.on_frameadvance
def frame():
frameCount = mkw_utils.frame_of_input()
if (frameCount % 10 == 0):
savestate.load_from_slot(0)
This is the blocking callstack:
1 [External Code]
2 DolphinD.exe!PyScripting::PyEvent<std::tuple<bool,unsigned int> const (__cdecl*)(API::Events::SaveStateLoad const &),&PyScripting::PySaveStateLoad>::GetListener::__l2::<lambda_1>::operator()(const API::Events::SaveStateLoad & event)
3 DolphinD.exe!std::invoke<`PyScripting::PyEvent<std::tuple<bool,unsigned int> const (__cdecl*)(API::Events::SaveStateLoad const &),&PyScripting::PySaveStateLoad>::GetListener'::`2'::<lambda_1> &,API::Events::SaveStateLoad const &>(PyScripting::PyEvent<std::tuple<bool,unsigned int> const (__cdecl*)(API::Events::SaveStateLoad const &),&PyScripting::PySaveStateLoad>::GetListener::__l2::<lambda_1> & _Obj, const API::Events::SaveStateLoad & _Arg1)
4 DolphinD.exe!std::_Func_impl_no_alloc<`PyScripting::PyEvent<std::tuple<bool,unsigned int> const (__cdecl*)(API::Events::SaveStateLoad const &),&PyScripting::PySaveStateLoad>::GetListener'::`2'::<lambda_1>,void,API::Events::SaveStateLoad const &>::_Do_call(const API::Events::SaveStateLoad & <_Args_0>)
5 DolphinD.exe!std::_Func_class<void,API::Events::SaveStateLoad const &>::operator()(const API::Events::SaveStateLoad & <_Args_0>)
6 DolphinD.exe!API::EventContainer<API::Events::SaveStateLoad>::EmitEvent(API::Events::SaveStateLoad evt)
7 DolphinD.exe!API::GenericEventHub<API::Events::FrameAdvance,API::Events::FrameDrawn,API::Events::MemoryBreakpoint,API::Events::CodeBreakpoint,API::Events::SetInterrupt,API::Events::ClearInterrupt,API::Events::SaveStateSave,API::Events::SaveStateLoad>::EmitEvent<API::Events::SaveStateLoad>(API::Events::SaveStateLoad evt)
8 DolphinD.exe!State::Load(int slot)
9 DolphinD.exe!PyScripting::LoadFromSlot(_object * self, _object * args)
10 [External Code]
11 DolphinD.exe!Py::CallFunction<>(const Py::Object & callable_object)
12 DolphinD.exe!`PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::Listener'::`2'::<lambda_1>::operator()<>()
13 DolphinD.exe!std::invoke<`PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::Listener'::`2'::<lambda_1>>(PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::Listener::__l2::<lambda_1> && _Obj)
14 DolphinD.exe!std::_Apply_impl<`PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::Listener'::`2'::<lambda_1>,std::tuple<> const &>(PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::Listener::__l2::<lambda_1> && _Obj, const std::tuple<> & _Tpl, std::integer_sequence<unsigned __int64> __formal)
15 DolphinD.exe!std::apply<`PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::Listener'::`2'::<lambda_1>,std::tuple<> const &>(PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::Listener::__l2::<lambda_1> && _Obj, const std::tuple<> & _Tpl)
16 DolphinD.exe!PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::Listener(const Py::Object module, const API::Events::FrameAdvance & event)
17 DolphinD.exe!PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::GetListener::__l2::<lambda_1>::operator()(const API::Events::FrameAdvance & event)
18 DolphinD.exe!std::invoke<`PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::GetListener'::`2'::<lambda_1> &,API::Events::FrameAdvance const &>(PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::GetListener::__l2::<lambda_1> & _Obj, const API::Events::FrameAdvance & _Arg1)
19 DolphinD.exe!std::_Func_impl_no_alloc<`PyScripting::PyEvent<std::tuple<> const (__cdecl*)(API::Events::FrameAdvance const &),&PyScripting::PyFrameAdvance>::GetListener'::`2'::<lambda_1>,void,API::Events::FrameAdvance const &>::_Do_call(const API::Events::FrameAdvance & <_Args_0>)
20 DolphinD.exe!std::_Func_class<void,API::Events::FrameAdvance const &>::operator()(const API::Events::FrameAdvance & <_Args_0>)
21 DolphinD.exe!API::EventContainer<API::Events::FrameAdvance>::EmitEvent(API::Events::FrameAdvance evt)
22 DolphinD.exe!API::GenericEventHub<API::Events::FrameAdvance,API::Events::FrameDrawn,API::Events::MemoryBreakpoint,API::Events::CodeBreakpoint,API::Events::SetInterrupt,API::Events::ClearInterrupt,API::Events::SaveStateSave,API::Events::SaveStateLoad>::EmitEvent<API::Events::FrameAdvance>(API::Events::FrameAdvance evt)
23 DolphinD.exe!PatchEngine::ApplyFramePatches()
24 DolphinD.exe!SystemTimers::`anonymous namespace'::PatchEngineCallback(Core::System & system, unsigned __int64 userdata, __int64 cycles_late)
25 DolphinD.exe!CoreTiming::CoreTimingManager::Advance()
26 DolphinD.exe!CoreTiming::GlobalAdvance()
27 [External Code]
28 DolphinD.exe!BitField<4,1,unsigned int,unsigned int>::Value(std::integral_constant<bool,0> __formal)
Metadata
Metadata
Assignees
Labels
No labels