|
From: Arno P. <ar...@pu...> - 2011-03-18 19:14:47
|
did you do an "ant clean"? You probably have an old cache on your system.
Arno
On 3/18/11 12:09 PM, Markus Heberling wrote:
> Hi,
>
> I applied the patch, but unfortunately I can't compile the XCode project
> afterwards. I get different errors every time or XCode beachballs and
> doesn't compile at all...
>
>
> Greetings,
> Markus
>
> Am 17.03.2011 um 22:02 schrieb Arno Puder:
>
>>
>> Oh! I'm sorry. I thought you were another Markus!
>>
>> Can you please check the review system. There is a patch by another
>> Markus that will probably fix your problem. We hope to commit that
>> patch soon.
>>
>> Arno
>>
>> On Mar 17, 2011, at 1:43 PM, Markus Heberling <ma...@ti...
>> <mailto:ma...@ti...>> wrote:
>>
>>> Hi,
>>>
>>> I'm trying to convert a class that implements the Comparator
>>> interface with the c-backend. Unfortunately using that class as a
>>> comparator (e.g. in Arrays.sort) gives a EXC_BAD_ACCESS. In the
>>> included source snippet, you can see, that the
>>> com_sun_media_sound_ModelInstrumentComparator_compare___javax_sound_midi_Instrument_javax_sound_midi_Instrumentfunction
>>> is bound to
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.vtable[11]. But a
>>> little bit later in the interface vtable
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.vtable[12]is
>>> used, which is unset and leads to the error. I have manually changed
>>> the 12 to 11 in that line and the code works fine after that.
>>>
>>> void __INIT_IMPL_com_sun_media_sound_ModelInstrumentComparator()
>>> {
>>> if(!__TIB_com_sun_media_sound_ModelInstrumentComparator.classInitializationBegan)
>>> {
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.classInitializationBegan=
>>> 1;
>>>
>>> // Initialize base class if necessary
>>> if(!__TIB_java_lang_Object.classInitialized)
>>> __INIT_IMPL_java_lang_Object();
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.newInstanceFunc=
>>> __NEW_INSTANCE_com_sun_media_sound_ModelInstrumentComparator;
>>> // Copy vtable from base class
>>> XMLVM_MEMCPY(__TIB_com_sun_media_sound_ModelInstrumentComparator.vtable,
>>> __TIB_java_lang_Object.vtable, sizeof(__TIB_java_lang_Object.vtable));
>>> // Initialize vtable for this class
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.vtable[11] =
>>> (VTABLE_PTR)
>>> &com_sun_media_sound_ModelInstrumentComparator_compare___javax_sound_midi_Instrument_javax_sound_midi_Instrument;
>>> // Initialize vtable for implementing interfaces
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.numImplementedInterfaces=
>>> 1;
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.implementedInterfaces=
>>> (__TIB_DEFINITION_TEMPLATE* (*)[1])
>>> XMLVM_MALLOC(sizeof(__TIB_DEFINITION_TEMPLATE*) * 1);
>>> __INIT_IMPL_FOR_CLASS_java_util_Comparator(&__TIB_com_sun_media_sound_ModelInstrumentComparator.implementedInterfaces[0][0]);
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.implementedInterfaces[0][0]->vtable[11]
>>> = __TIB_com_sun_media_sound_ModelInstrumentComparator.vtable[12];
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.implementedInterfaces[0][0]->vtable[1]
>>> = __TIB_com_sun_media_sound_ModelInstrumentComparator.vtable[1];
>>>
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.declaredFields=
>>> &__field_reflection_data[0];
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.numDeclaredFields= sizeof(__field_reflection_data)
>>> / sizeof(XMLVM_FIELD_REFLECTION_DATA);
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.constructorDispatcherFunc=
>>> constructor_dispatcher;
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.declaredConstructors=
>>> &__constructor_reflection_data[0];
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.numDeclaredConstructors=
>>> sizeof(__constructor_reflection_data) /
>>> sizeof(XMLVM_CONSTRUCTOR_REFLECTION_DATA);
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.methodDispatcherFunc=
>>> method_dispatcher;
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.declaredMethods=
>>> &__method_reflection_data[0];
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.numDeclaredMethods=
>>> sizeof(__method_reflection_data) / sizeof(XMLVM_METHOD_REFLECTION_DATA);
>>> __CLASS_com_sun_media_sound_ModelInstrumentComparator=
>>> XMLVM_CREATE_CLASS_OBJECT(&__TIB_com_sun_media_sound_ModelInstrumentComparator);
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.clazz=
>>> __CLASS_com_sun_media_sound_ModelInstrumentComparator;
>>> __CLASS_com_sun_media_sound_ModelInstrumentComparator_ARRAYTYPE=
>>> XMLVM_CREATE_ARRAY_CLASS_OBJECT(__CLASS_com_sun_media_sound_ModelInstrumentComparator,
>>> 1);
>>>
>>> __TIB_com_sun_media_sound_ModelInstrumentComparator.classInitialized= 1;
>>> }
>>> }
>>>
>>> I don't have enough knowledge of the c backend, so I can't find the
>>> place where to correct this in the source myself...
>>>
>>> (And yes, you see correctly, that I'm trying to do MIDI in there :D)
>>>
>>> Regards,
>>> Markus
>>> ------------------------------------------------------------------------------
>>> Colocation vs. Managed Hosting
>>> A question and answer guide to determining the best fit
>>> for your organization - today and in the future.
>>> http://p.sf.net/sfu/internap-sfd2d
>>> _______________________________________________
>>> Xmlvm-developers mailing list
>>> Xml...@li...
>>> <mailto:Xml...@li...>
>>> https://lists.sourceforge.net/lists/listinfo/xmlvm-developers
>
|