[
https://issues.apache.org/jira/browse/OPENJPA-2575?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14483062#comment-14483062
]
ASF subversion and git services commented on OPENJPA-2575:
----------------------------------------------------------
Commit 1671821 from [~struberg] in branch 'openjpa/trunk'
[ https://svn.apache.org/r1671821 ]
OPENJPA-2575 temporary set TCCL to _tmpClassloader
This prevents using the wrong ClassLoader during OpenJPA boostrap
which might lead to mem leaks.
Txs to rmannibucau for the report and fix!
> wrong context class loader in
> org.apache.openjpa.enhance.PCClassFileTransformer#transform0
> ------------------------------------------------------------------------------------------
>
> Key: OPENJPA-2575
> URL: https://issues.apache.org/jira/browse/OPENJPA-2575
> Project: OpenJPA
> Issue Type: New Feature
> Reporter: Romain Manni-Bucau
> Fix For: 2.4.0
>
> Attachments: OPENJPA-2575.patch
>
>
> Hi
> if there is a temp loader in
> org.apache.openjpa.enhance.PCClassFileTransformer#transform0 then it should
> be the context where classes are loaded during the enhancement (transform0).
> typically "new Project().loadClass(new ByteArrayInputStream(bytes),
> _tmpLoader)" shouldn't be done outside of _tmpLoader contextual loader.
> Standard Thread.currentThread().setContextClassLoader(_tmpLoader); then
> setContextClassLoader(old) try/finally solves it.
> Side note: this issue has been reported originally on tomee@.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)