"Kyle" == Kyle Galloway <kgallowa@redhat.com> writes:
Kyle> So, what I have done is to change things a bit. get_local_var_table
Kyle> now just sets the pointers to point to the strings stored in
Kyle> _Jv_InterpMethod. in the JVMTI call, we allocate buffers of the
Kyle> correct size, then strcpy the strings over into the JVMTI structure.
Kyle> I think this addresses all the concers.
Kyle> Any other issues?
You are very, very close.
Kyle> + _Jv_LocalVarTableEntry *table
Kyle> + = reinterpret_cast<_Jv_LocalVarTableEntry *>
Kyle> + (_Jv_AllocBytes (table_len * sizeof (_Jv_LocalVarTableEntry)));
This needs to use _Jv_AllocRawObj instead of _Jv_AllocBytes.
Otherwise, the strings you create here will not be seen by the GC.
Ok with that change. Thanks for persevering.