felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Clement Escoffier (JIRA)" <j...@apache.org>
Subject [jira] [Resolved] (FELIX-4725) Inner Class Manipulation uses the wrong 'access level'
Date Wed, 10 Dec 2014 07:46:13 GMT

     [ https://issues.apache.org/jira/browse/FELIX-4725?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Clement Escoffier resolved FELIX-4725.
--------------------------------------
    Resolution: Fixed

Fixed in trunk.

> Inner Class Manipulation uses the wrong 'access level'
> ------------------------------------------------------
>
>                 Key: FELIX-4725
>                 URL: https://issues.apache.org/jira/browse/FELIX-4725
>             Project: Felix
>          Issue Type: Bug
>          Components: iPOJO
>    Affects Versions: ipojo-manipulator-1.12.0
>            Reporter: Clement Escoffier
>            Assignee: Clement Escoffier
>             Fix For: ipojo-manipulator-1.12.1
>
>
> When the manipulator manipulates inner classes, the copied method are reusing the same
access level than the initial (original method). For instance {code}public void foo(){code}
 is replaced by {code}public void __foo(){code}. However, reusing the same access level leads
to a (missing) mediation on the invoke instruction we need to use to invoke this method. Despite
this is working on traditional JVM (Oracle, HotSpot...), it fails on Dalvik. 
> The fix is straightforward. Copied methods should be private:
> {code}private void __foo(){code}
> Thus, we just need to use the {code}INVOKE_SPECIAL{code} instruction.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Mime
View raw message