Skip to content

Camera and Event Dispatcher Error on Android Devices #2266

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
armanhossiny opened this issue Dec 11, 2024 · 3 comments
Closed

Camera and Event Dispatcher Error on Android Devices #2266

armanhossiny opened this issue Dec 11, 2024 · 3 comments
Labels
wontfix This will not be worked on

Comments

@armanhossiny
Copy link
Contributor

armanhossiny commented Dec 11, 2024

Crash Report:

hi,

I have encountered a crash issue in my application related to Axmol. The crash logs suggest that the issue might be stemming from ax::Camera::initDefault() and ax::EventDispatcher::dispatchEvent(). The SIGSEGV/SEGV_MAPERR error indicates that the application is accessing invalid memory addresses.

Crash Details:

OS: Android 14
Device: Redmi Fire 4.19.191
CPU: arm64
AXMol Version: a4a7564
Description of the Issue:

The ax::Camera::initDefault() crash might be related to incorrect camera resource management.
The ax::EventDispatcher::dispatchEvent() crash appears to be related to incorrect EventListener management or incorrect event dispatching.

Crash details:

Crashed: Thread
SIGSEGV /SEGV_MAPERR
OS: Android: 4.19.191 Redmi/fire_global/fire:14/UP1A.231005.007/V816.0.7.0.UMXMIXM:user/release-keys -perf-g23d0d870bbdb #1 SMP PREEMPT Tue Aug 13 02:21:02 UTC 2024 aarch64
CPU: arm64
GPU: -
0  libDomino.so ax::Camera::initDefault() (Camera.cpp:191)
1  libDomino.so ax::Camera::initDefault() (Camera.cpp:191)
2  libDomino.so ax::Camera::initDefault() (Camera.cpp:190)
3  libDomino.so std::__ndk1::__function::__func<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0, std::__ndk1::allocator<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0>, void (ax::Event*)>::operator()(ax::Event*&&) (functional:1731)
4  libDomino.so std::__ndk1::__function::__func<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0, std::__ndk1::allocator<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0>, void (ax::Event*)>::operator()(ax::Event*&&) (functional:1731)
5  libDomino.so std::__ndk1::__function::__func<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0, std::__ndk1::allocator<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0>, void (ax::Event*)>::operator()(ax::Event*&&) (functional:1731)
6  libDomino.so std::__ndk1::__function::__func<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0, std::__ndk1::allocator<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0>, void (ax::Event*)>::operator()(ax::Event*&&) (functional:1731)
7  libDomino.so std::__ndk1::__function::__func<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0, std::__ndk1::allocator<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0>, void (ax::Event*)>::operator()(ax::Event*&&) (functional:1731)
8  libDomino.so std::__ndk1::__function::__func<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0, std::__ndk1::allocator<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0>, void (ax::Event*)>::operator()(ax::Event*&&) (functional:1731)
9  libDomino.so std::__ndk1::__function::__func<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0, std::__ndk1::allocator<ax::EventListenerCustom::init(std::__ndk1::basic_string_view<char, std::__ndk1::char_traits<char> >, std::__ndk1::function<void (ax::EventCustom*)> const&)::$_0>, void (ax::Event*)>::operator()(ax::Event*&&) (functional:1731)
10 libDomino.so std::__ndk1::__function::__func<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2, std::__ndk1::allocator<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2>, bool (ax::EventListener*)>::operator()(ax::EventListener*&&) (functional:1731)
11 libDomino.so std::__ndk1::__function::__func<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2, std::__ndk1::allocator<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2>, bool (ax::EventListener*)>::operator()(ax::EventListener*&&) (functional:1731)
12 libDomino.so std::__ndk1::__function::__func<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2, std::__ndk1::allocator<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2>, bool (ax::EventListener*)>::operator()(ax::EventListener*&&) (functional:1731)
13 libDomino.so std::__ndk1::__function::__func<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2, std::__ndk1::allocator<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2>, bool (ax::EventListener*)>::operator()(ax::EventListener*&&) (functional:1731)
14 libDomino.so std::__ndk1::__function::__func<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2, std::__ndk1::allocator<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2>, bool (ax::EventListener*)>::operator()(ax::EventListener*&&) (functional:1731)
15 libDomino.so std::__ndk1::__function::__func<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2, std::__ndk1::allocator<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2>, bool (ax::EventListener*)>::operator()(ax::EventListener*&&) (functional:1731)
16 libDomino.so std::__ndk1::__function::__func<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2, std::__ndk1::allocator<ax::EventDispatcher::dispatchEvent(ax::Event*, bool)::$_2>, bool (ax::EventListener*)>::operator()(ax::EventListener*&&) (functional:1731)
17 libDomino.so ax::EventDispatcher::dispatchEventToListeners(ax::EventDispatcher::EventListenerVector*, std::__ndk1::function<bool (ax::EventListener*)> const&) (EventDispatcher.cpp:854)
18 libDomino.so ax::EventDispatcher::dispatchEventToListeners(ax::EventDispatcher::EventListenerVector*, std::__ndk1::function<bool (ax::EventListener*)> const&) (EventDispatcher.cpp:854)
19 libDomino.so ax::EventDispatcher::dispatchEventToListeners(ax::EventDispatcher::EventListenerVector*, std::__ndk1::function<bool (ax::EventListener*)> const&) (EventDispatcher.cpp:854)
20 libDomino.so ax::EventDispatcher::dispatchEvent(ax::Event*, bool) (EventDispatcher.cpp:999)
21 libDomino.so ax::Director::setProjection(ax::Director::Projection) (Director.cpp:671)
22 libDomino.so Java_org_axmol_lib_AxmolRenderer_nativeInit (javaactivity-android.cpp:103)
23 boot.oat     (Missing)
@rh101
Copy link
Contributor

rh101 commented Dec 11, 2024

If possible, please supply a test project that has the minimal amount of code to reproduce the issue.

@rh101
Copy link
Contributor

rh101 commented Feb 7, 2025

@armanhossiny Is this still an issue, or have you resolved it?

Copy link

stale bot commented Apr 8, 2025

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the wontfix This will not be worked on label Apr 8, 2025
@stale stale bot closed this as completed Apr 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
wontfix This will not be worked on
Projects
None yet
Development

No branches or pull requests

2 participants