Skip to content
Snippets Groups Projects
Commit 25ee39dc authored by Nat Goodspeed's avatar Nat Goodspeed
Browse files

DRTVWR-558: Fix LLEventDispatcher::addMethod() for LazyEventAPI.

addMethod() was using dynamic_cast<target class*>(this) and testing for
nullptr to decide whether the class owning the passed method is, or is not, a
subclass of LLEventDispatcher. The trouble is that it doesn't work for the
deferred add() calls queued by LazyEventAPI: the dynamic_cast was always
returning nullptr. static_cast works better, but that leaves us with the
problem we were trying to solve with dynamic_cast: what if the target class
really isn't a subclass? Use std::is_base_of to pick which of two addMethod()
overloads to invoke, one of which calls addFail().

(cherry picked from commit a4d520aa5d023d80cfeec4f40c3464b54cbcfc5b)
parent d2738b60
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment