Bug in JNI RegisterNatives?

Juerg Lehni juerg@scratchdisk.com
Sun Oct 1 19:06:00 GMT 2006


I am wondering wether this patch will eventally be included
I've submitted it more than 3 months ago, and nothing seems to have 
happened since.
Is there anything I need to do to get it accepted?
Jürg
Am 19.06.2006 um 23:10 schrieb Juerg Lehni:
> Bryce,
>>> Thanks for the reminder. Ideally we should find a way to refer to 
>> klass->name directly rather than reading it as a String and 
>> converting it back to Utf8. Yes, doing it in this one instance 
>> doesn't hurt much, but it would simplify the patch a lot, and 
>> fixing it might come in useful elsewhere. Would the patch below help?
>> The patch does help. Another possibility would be to make that 
> field public...
>> I was wondering if the function should be called 
> _Jv_GetClassNameUtf8Const, to go well together with 
> getNameUtf8Const in jfieldID.
>> I changed my patch now, but could not test it as my build process 
> is currently broken, due to experiments with Java2D. I'm pretty 
> sure it will work though, as the only lines changed are the calls 
> to _Jv_GetClassNameUtf8...
>>> Also, was there a reason to change _Jv_AllocBytes() calls to 
>> _Jv_Malloc()?
>> Nothing I can remember now. What's the difference between the two 
> really? I changed it back in the above patch now.
>>> For large changes we need a GCC copyright assignment on file with 
>> the FSF. See: http://gcc.gnu.org/contribute.html - I think we can 
>> accept this under the "small changes" rule, however. But, if you 
>> plan to contribute more changes in the future, it might be a good 
>> idea to start the paperwork process now.
>> I don't plan to write more patches, so it should be fine for now.
>> Jürg
>> <jni.patch>
>>> Bryce
>>>>>> Juerg Lehni wrote:
>>> Tom,
>>>>>> Please let me know what I should do to get this patch finalized 
>>> and commited. I would like to make sure it's getting there soon.
>>>>>> Jürg
>>>> 2006年06月16日 Bryce McKinlay <mckinlay@redhat.com>
>>>> * java/lang/Class.h (_Jv_GetClassNameUtf8): New declaration.
>> * java/lang/natClass.cc (_Jv_GetClassNameUtf8): Define.
>>>> Index: Class.h
>> ===================================================================
>> --- Class.h	(revision 114642)
>> +++ Class.h	(working copy)
>> @@ -231,6 +231,7 @@
>> jmethodID _Jv_FromReflectedConstructor 
>> (java::lang::reflect::Constructor *);
>> jint JvNumMethods (jclass);
>> jmethodID JvGetFirstMethod (jclass);
>> +_Jv_Utf8Const* _Jv_GetClassNameUtf8 (jclass);
>>>> #ifdef INTERPRETER
>> // Finds a desired interpreter method in the given class or NULL 
>> if not found
>> @@ -472,6 +473,7 @@
>> friend jmethodID (::_Jv_FromReflectedConstructor) 
>> (java::lang::reflect::Constructor *);
>> friend jint (::JvNumMethods) (jclass);
>> friend jmethodID (::JvGetFirstMethod) (jclass);
>> + friend _Jv_Utf8Const * ::_Jv_GetClassNameUtf8 (jclass);
>> #ifdef INTERPRETER
>> friend _Jv_InterpMethod* (::_Jv_FindInterpreterMethod) (jclass 
>> klass,
>> 							 jmethodID desired_method);
>> Index: natClass.cc
>> ===================================================================
>> --- natClass.cc	(revision 114642)
>> +++ natClass.cc	(working copy)
>> @@ -1264,3 +1264,11 @@
>> return NULL;
>> }
>> #endif
>> +
>> +// Return Utf8 name of a class. This function is here for code 
>> that can't access
>> +// klass->name directly.
>> +_Jv_Utf8Const*
>> +_Jv_GetClassNameUtf8 (jclass klass)
>> +{
>> + return klass->name;
>> +}
>


More information about the Java mailing list

AltStyle によって変換されたページ (->オリジナル) /