Skip to content
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

calling a method on a static moirai::error_handling::error_log now leads to 0xC0000005: Access violation executing location on some windows platforms. #1

Open
jmp75 opened this issue Oct 10, 2024 · 0 comments
Labels

Comments

@jmp75
Copy link
Member

jmp75 commented Oct 10, 2024

Observations

Initially tracked in csiro-hydroinformatics/uchronia-time-series#1. Trials on Windows 11 with debug mode libraries helped narrow to an exception thrown in moirai related code.

void RegisterExceptionCallbackUchronia(const void* callback)
{
	if(callback == nullptr) // Allow the deregistration, at least for unit test purposes.
		errorHandleUchronia.register_exception_callback(callback);
	else if(!errorHandleUchronia.has_callback_registered()) // seems to be where the exception is thrown.
		errorHandleUchronia.register_exception_callback(callback);
}

errorHandleUchronia is instantiated as a static moirai::error_handling::error_log errorHandleUchronia; so this is definitely a value object, not a pointer that would be null or dangling to a random memory location.

I am almost certain this runs on linux compiled with gcc.

This codebase has been stable for quite a while, at the very least two years. Any such glaring issue would have manifested itself. Why is is now showing, and consistently so?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant