Domagoj Cosic created ARIES-2021:
------------------------------------
Summary: SPI Fly thread context class loader swapping fails on
multiple interceptions in thread stack
Key: ARIES-2021
URL: https://issues.apache.org/jira/browse/ARIES-2021
Project: Aries
Issue Type: Bug
Components: SPI Fly
Affects Versions: spifly-1.3.2, spifly-1.3.1, spifly-1.3.0
Reporter: Domagoj Cosic
In the Util class, exactly one thread context class loader can be stored per
thread (stack). It works if there is only one method intercepted per thread
stack. If the intercepted method leads to code that itself leads to another
call into SPI Fly, this happens again and overwrites the stored context class
loader.
While this scenario is unusual, it can happen in rare cases and it is a
potentially dangerous flaw. The implementation should not store only one value
per thread but a LiFo stack, a DeQueue.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)