Illegal Package-Private Accesses in 3.4
Bryce McKinlay
bryce@mckinlay.net.nz
Mon Aug 11 12:16:00 GMT 2003
On Monday, Aug 11, 2003, at 22:12 Pacific/Auckland, Andrew Haley wrote:
>> It would be cleaner to keep these things in the same package wherever
>> possible. If we're worried about user code calling NameFinder being a
>> security risk, we could add a security check to its constructor.
>
>> BTW, I notice some evil use of RawData & _Jv_Malloc in StackTrace.
>> Specifically I don't see 'addrs' getting freed anywhere! I think its
>> better to avoid RawData wherever possible, and use byte[] instead.
>
> No, that's not right. There are some severe problems with using
> byte[] instead of RawData. In particular, the previous equivalent of
> this code broke because byte[] and pointer references have differing
> alignments.
Doh. I presume we've tried to go down the path of giving the data field
of all array types pointer alignment?
> I suspect that the Right Thing here would be to create an
> array of RawData instead of using _Jv_Malloc.
Either that or JvAllocBytes, and introducing another RawData type which
doesn't prevent the GC from marking it. Maybe RawData should actually
be marked, and we could have a separate RawDataUnmarked for the cases
where thats useful.
Regards
Bryce.
More information about the Java-patches
mailing list