You can subscribe to this list here.
2011 |
Jan
|
Feb
|
Mar
(38) |
Apr
(34) |
May
(20) |
Jun
(46) |
Jul
(6) |
Aug
(13) |
Sep
(50) |
Oct
(27) |
Nov
(10) |
Dec
(3) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2012 |
Jan
(7) |
Feb
(3) |
Mar
(4) |
Apr
|
May
|
Jun
(2) |
Jul
(4) |
Aug
(3) |
Sep
(1) |
Oct
(2) |
Nov
|
Dec
|
2013 |
Jan
(1) |
Feb
|
Mar
(4) |
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2015 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Paul P. <bay...@gm...> - 2011-03-24 14:12:54
|
Fortunately with XMLVM we can make use of "final" variables, which are accessible inside run(), so you don't need an argument. Most of the time you'll probably be writing anonymous inner classes, which can use those variables. And a more standard class that implements Runnable can store variables as members. The nature of Objective-C makes it more difficult to use performSelectorOnMainThread if we didn't have a place to stick an argument, but Java & therefore XMLVM makes it simple. Thanks, Paul On Thu, Mar 24, 2011 at 5:44 AM, Panayotis Katsaloulis < pan...@pa...> wrote: > > On Mar 24, 2011, at 9:27 AM, Arno Puder wrote: > > > > > that is certainly also an interesting alternative: instead of > > introducing a new interface NSSelector, simply use Runnable. > > > > Panayotis: what do you think? > > > > Arno > > > This was my first intention. > Unfortunately it is not possible, since we need an argument for this > method, but the "run" method is without arguments. > > |
From: Sascha H. <sa...@gm...> - 2011-03-24 12:13:18
|
Hi guys, I want to let you know that I just submitted the so called 2-phase patch to trunk. Here some notes from my commit log: This patch does a couple of things: - It changes the way processing works: Instead of having a process(), getOutputFiles() and getXmlvmResources() method, there are now processPhase1 and processPhase2. Each of those gets a bundle as the argument, where processes can take out and put in OutputFiles and XmlvmResources. This eliminates the need for each process to call its pre-processes and to collect files and resources itself, which makes the processes much cleaner - No process needs to know the type of the pre-processes, so I eliminated the generic type, which again makes things a lot cleanrer - Why two process phases? Some processes require a global view of all XmlvmResources that are created in the application. Therefore, phase 1 is the phase where every process creates its XmlvmResources. In the second phase, no XmlvmResources can be added anymore. This way it is guaranteed, that all XmlvmResources are present in the second phase. All in all, this adds an important new feature: Processes can have a global view on the created resources. This is required for two pending patches, that are now unblocked. Second of all, process are much cleaner now, as described above. I know that this can cause some of you major merging headaches, but I will try to help you out as much as possible and merging your features into this new scheme. As with all major changes there is a high changes of bugs being introduced. Arno and I tested quite a bit an everything looks fine so far. Let me know, if you find a bug that you believe was caused by this patch. Cheers // Sascha |
From: Panayotis K. <pan...@pa...> - 2011-03-24 10:44:54
|
On Mar 24, 2011, at 9:27 AM, Arno Puder wrote: > > that is certainly also an interesting alternative: instead of > introducing a new interface NSSelector, simply use Runnable. > > Panayotis: what do you think? > > Arno This was my first intention. Unfortunately it is not possible, since we need an argument for this method, but the "run" method is without arguments. |
From: Arno P. <ar...@pu...> - 2011-03-24 07:28:25
|
that is certainly also an interesting alternative: instead of introducing a new interface NSSelector, simply use Runnable. Panayotis: what do you think? Arno On 3/23/11 4:59 PM, Paul Poley wrote: > Yep, I try to avoid reflection at all costs. I had made a similar class > so that there's only one place where reflection occurs. So instead of > performSelector..., I call performRunnable... > > package blah.blah.blah; > > > import org.xmlvm.iphone.NSObject; > > import blah.blah.Logger; > > > public class IPhoneUtil { > > private static final Logger log = new Logger(IPhoneUtil.class); > > > private static IPhoneUtil utilInstance = new IPhoneUtil(); > > > private IPhoneUtil() { > > > } > > > public static void performRunnableOnMainThread(Runnable runnable, > boolean waitUntilDone) { > > NSObject.performSelectorOnMainThread(utilInstance, "executeRunnable", > runnable, waitUntilDone); > > } > > > /** > > * Execute a runnable on the main thread. This is only called via reflection > > * using performSelectorOnMainThread > > * @param arg the Runnable object > > */ > > public void executeRunnable(Object arg) { > > if (arg instanceof Runnable) { > > Runnable r = (Runnable)arg; > > r.run(); > > } else { > > log.info("Could not execute Runnable. Unexpected parameter type: " > > + (arg == null ? null : arg.getClass().getName())); > > } > > } > > } > > > > On Wed, Mar 23, 2011 at 4:42 PM, Arno Puder <ar...@pu... > <mailto:ar...@pu...>> wrote: > > > > On 3/23/2011 2:40 PM, Panayotis Katsaloulis wrote: > > Right now the patch is half-ready. > > It is only a presentation of the API I propose (alongside the > necessary changes for Android to be compatible). > > There are not even bindings for the ObjC backend, so it still > needs a lot of work. > > > > I just wanted to be sure that you agree with this change before > spend more time with it. > > your patch is definitely going in the right direction. Time to get your > hands dirty with the C backend! :) > > Arno > |
From: Paul P. <bay...@gm...> - 2011-03-23 23:59:15
|
Yep, I try to avoid reflection at all costs. I had made a similar class so that there's only one place where reflection occurs. So instead of performSelector..., I call performRunnable... package blah.blah.blah; import org.xmlvm.iphone.NSObject; import blah.blah.Logger; public class IPhoneUtil { private static final Logger log = new Logger(IPhoneUtil.class); private static IPhoneUtil utilInstance = new IPhoneUtil(); private IPhoneUtil() { } public static void performRunnableOnMainThread(Runnable runnable, booleanwaitUntilDone) { NSObject.performSelectorOnMainThread(utilInstance, "executeRunnable", runnable, waitUntilDone); } /** * Execute a runnable on the main thread. This is only called via reflection * using performSelectorOnMainThread * @param arg the Runnable object */ public void executeRunnable(Object arg) { if (arg instanceof Runnable) { Runnable r = (Runnable)arg; r.run(); } else { log.info("Could not execute Runnable. Unexpected parameter type: " + (arg == null ? null : arg.getClass().getName())); } } } On Wed, Mar 23, 2011 at 4:42 PM, Arno Puder <ar...@pu...> wrote: > > > On 3/23/2011 2:40 PM, Panayotis Katsaloulis wrote: > > Right now the patch is half-ready. > > It is only a presentation of the API I propose (alongside the necessary > changes for Android to be compatible). > > There are not even bindings for the ObjC backend, so it still needs a lot > of work. > > > > I just wanted to be sure that you agree with this change before spend > more time with it. > > your patch is definitely going in the right direction. Time to get your > hands dirty with the C backend! :) > > Arno > > |
From: Arno P. <ar...@pu...> - 2011-03-23 21:42:46
|
On 3/23/2011 2:40 PM, Panayotis Katsaloulis wrote: > Right now the patch is half-ready. > It is only a presentation of the API I propose (alongside the necessary changes for Android to be compatible). > There are not even bindings for the ObjC backend, so it still needs a lot of work. > > I just wanted to be sure that you agree with this change before spend more time with it. your patch is definitely going in the right direction. Time to get your hands dirty with the C backend! :) Arno |
From: Panayotis K. <pan...@pa...> - 2011-03-23 21:40:26
|
On Mar 23, 2011, at 11:29 PM, Arno Puder wrote: > > I am absolutely OK with the patch. I personally have favored making use > of strongly typed API when creating the Java Cocoa API and that is what > you do for NSSelector. > > HOWEVER: your patch does not make the necessary changes to the C > backend. If you commit the patch as-is, it will break the C backend. Its > OK to continue to do work on the Objective-C backend while we are still > in transition, but I would expect that whatever change is done to the > Objective-C backend is also done with the C backend. > > Arno Right now the patch is half-ready. It is only a presentation of the API I propose (alongside the necessary changes for Android to be compatible). There are not even bindings for the ObjC backend, so it still needs a lot of work. I just wanted to be sure that you agree with this change before spend more time with it. |
From: Arno P. <ar...@pu...> - 2011-03-23 21:29:28
|
I am absolutely OK with the patch. I personally have favored making use of strongly typed API when creating the Java Cocoa API and that is what you do for NSSelector. HOWEVER: your patch does not make the necessary changes to the C backend. If you commit the patch as-is, it will break the C backend. Its OK to continue to do work on the Objective-C backend while we are still in transition, but I would expect that whatever change is done to the Objective-C backend is also done with the C backend. Arno On 3/23/2011 9:17 AM, Panayotis Katsaloulis wrote: > After some previous discussions, I have decided to have a better view at the > NSObject.performSelector method. > > Here is a proposal, to fix it before I start making drastic changes: > > http://xmlvm-reviews.appspot.com/111006 > > This patch is far from being ready for submission, it is more to have a look at the API first. > The two important files are: > http://xmlvm-reviews.appspot.com/111006/diff/1/src/xmlvm2objc/compat-lib/java/org/xmlvm/iphone/NSObject.java > and > http://xmlvm-reviews.appspot.com/111006/patch/1/3 > > What do you think? > > > PS: I was a bit influenced by this object: > http://www.spice-of-life.net/wodock/api/com/webobjects/foundation/NSSelector.html > ------------------------------------------------------------------------------ > Enable your software for Intel(R) Active Management Technology to meet the > growing manageability and security demands of your customers. Businesses > are taking advantage of Intel(R) vPro (TM) technology - will your software > be a part of the solution? Download the Intel(R) Manageability Checker > today! http://p.sf.net/sfu/intel-dev2devmar > _______________________________________________ > Xmlvm-developers mailing list > Xml...@li... > https://lists.sourceforge.net/lists/listinfo/xmlvm-developers |
From: Panayotis K. <pan...@pa...> - 2011-03-23 16:17:43
|
After some previous discussions, I have decided to have a better view at the NSObject.performSelector method. Here is a proposal, to fix it before I start making drastic changes: http://xmlvm-reviews.appspot.com/111006 This patch is far from being ready for submission, it is more to have a look at the API first. The two important files are: http://xmlvm-reviews.appspot.com/111006/diff/1/src/xmlvm2objc/compat-lib/java/org/xmlvm/iphone/NSObject.java and http://xmlvm-reviews.appspot.com/111006/patch/1/3 What do you think? PS: I was a bit influenced by this object: http://www.spice-of-life.net/wodock/api/com/webobjects/foundation/NSSelector.html |
From: Arno P. <ar...@pu...> - 2011-03-22 07:17:49
|
OK, here is the problem: you are using the vtable patch for an iphonec project. This, unfortunately, does not work (yet). The problem is that the vtable patch needs a "global view" on all classes. However, in order to make this happen the XMLVM pipeline needs some refactoring. Sascha is on this job and is making good progress. We'll send a ping on the mailing list when the refactoring is done. Long in short: the vtable patch currently only works for --target=posix. Arno On 3/22/11 12:04 AM, Markus Heberling wrote: > Hi, > > disabling the warnings does wonders to xcode4 :D > > I get the following error with the table patch: > > In file included from > /Users/markus/Documents/workspace/Kinderlieder/dist/../build/xcode/src/app/native_java_util_Locale.m:9: > /Users/markus/Documents/workspace/Kinderlieder/dist/../build/xcode/src/lib/iphone/org_xmlvm_iphone_NSString.h:37: > error: 'XMLVM_ITABLE_SIZE_org_xmlvm_iphone_NSString' undeclared here > (not in a function) > > Here is the relevant generated snippet. As you can see it uses > XMLVM_ITABLE_SIZE_org_xmlvm_iphone_NSString, but that is not defined in > the whole project. > > // Class declarations for org.xmlvm.iphone.NSString > XMLVM_DEFINE_CLASS(org_xmlvm_iphone_NSString, 6, > XMLVM_ITABLE_SIZE_org_xmlvm_iphone_NSString) > > Greetings, > Markus > > Am 20.03.2011 um 18:24 schrieb Arno Puder: > >> >> the vtable patch is the way to go, although we can't commit it yet. It >> doesn't make sense to invest time and effort to fix the HEAD. One >> problem with the vtable patch is that it causes many compiler warnings >> (this will be fixed). Unfortunately Xcode doesn't behave well with many >> warnings which is probably what you meant with beachballing (get a >> rebate on those $4! ;) ). In the Xcode project settings, select "Inhibit >> all warnings" and try to compile again. >> >> Arno >> >> >> On 3/20/11 3:18 AM, Markus Heberling wrote: >>> Hi, >>> >>> unfortunaltly XCode now beachballs everytime if I have the vtable >>> patch applied, so can't give you the errors I got... >>> >>> But I started xmlvm (without the vtable patch) with debug output and >>> got this for the affected class: >>> >>> [java] [03/20/11 11:02:47.869] DEBUG: Size of vtable for class >>> com.sun.media.sound.ModelInstrumentComparator: 13 >>> [java] [03/20/11 11:02:47.869] DEBUG: Implemented interfaces: >>> [java] [03/20/11 11:02:47.869] DEBUG: java.util.Comparator >>> [java] [03/20/11 11:02:47.869] DEBUG: compare: 11 = 12 >>> [java] [03/20/11 11:02:47.869] DEBUG: equals: 1 = 1 >>> ... >>> [java] [03/20/11 11:02:52.066] DEBUG: Vtable index for >>> com.sun.media.sound.ModelInstrumentComparator.compare: 11 >>> >>> The funny thing is, that it is working for other classes that >>> implement interfaces, like LinkedList etc... >>> >>> Any hint where in the code I could poke around to get this fixed? >>> >>> Markus >>> >>> Am 18.03.2011 um 20:21 schrieb Arno Puder: >>> >>>> >>>> what errors do you get? >>>> >>>> On 3/18/11 12:20 PM, Markus Heberling wrote: >>>>> Hi, >>>>> >>>>> Yes, I did ant clean in xmlvm and in my project several times. >>>>> >>>>> Markus >>>>> >>>>> Am 18.03.2011 um 20:14 schrieb Arno Puder: >>>>> >>>>>> >>>>>> 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...> >>>>>>>> <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...> >>>>>>>>> <mailto:Xml...@li...> >>>>>>>>> https://lists.sourceforge.net/lists/listinfo/xmlvm-developers >>>>>>> >>>>> >>> >> >> ------------------------------------------------------------------------------ >> 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... >> https://lists.sourceforge.net/lists/listinfo/xmlvm-developers > |
From: Markus H. <ma...@ti...> - 2011-03-22 07:05:01
|
Hi, disabling the warnings does wonders to xcode4 :D I get the following error with the table patch: In file included from /Users/markus/Documents/workspace/Kinderlieder/dist/../build/xcode/src/app/native_java_util_Locale.m:9: /Users/markus/Documents/workspace/Kinderlieder/dist/../build/xcode/src/lib/iphone/org_xmlvm_iphone_NSString.h:37: error: 'XMLVM_ITABLE_SIZE_org_xmlvm_iphone_NSString' undeclared here (not in a function) Here is the relevant generated snippet. As you can see it uses XMLVM_ITABLE_SIZE_org_xmlvm_iphone_NSString, but that is not defined in the whole project. // Class declarations for org.xmlvm.iphone.NSString XMLVM_DEFINE_CLASS(org_xmlvm_iphone_NSString, 6, XMLVM_ITABLE_SIZE_org_xmlvm_iphone_NSString) Greetings, Markus Am 20.03.2011 um 18:24 schrieb Arno Puder: > > the vtable patch is the way to go, although we can't commit it yet. It > doesn't make sense to invest time and effort to fix the HEAD. One > problem with the vtable patch is that it causes many compiler warnings > (this will be fixed). Unfortunately Xcode doesn't behave well with many > warnings which is probably what you meant with beachballing (get a > rebate on those $4! ;) ). In the Xcode project settings, select "Inhibit > all warnings" and try to compile again. > > Arno > > > On 3/20/11 3:18 AM, Markus Heberling wrote: >> Hi, >> >> unfortunaltly XCode now beachballs everytime if I have the vtable patch applied, so can't give you the errors I got... >> >> But I started xmlvm (without the vtable patch) with debug output and got this for the affected class: >> >> [java] [03/20/11 11:02:47.869] DEBUG: Size of vtable for class com.sun.media.sound.ModelInstrumentComparator: 13 >> [java] [03/20/11 11:02:47.869] DEBUG: Implemented interfaces: >> [java] [03/20/11 11:02:47.869] DEBUG: java.util.Comparator >> [java] [03/20/11 11:02:47.869] DEBUG: compare: 11 = 12 >> [java] [03/20/11 11:02:47.869] DEBUG: equals: 1 = 1 >> ... >> [java] [03/20/11 11:02:52.066] DEBUG: Vtable index for com.sun.media.sound.ModelInstrumentComparator.compare: 11 >> >> The funny thing is, that it is working for other classes that implement interfaces, like LinkedList etc... >> >> Any hint where in the code I could poke around to get this fixed? >> >> Markus >> >> Am 18.03.2011 um 20:21 schrieb Arno Puder: >> >>> >>> what errors do you get? >>> >>> On 3/18/11 12:20 PM, Markus Heberling wrote: >>>> Hi, >>>> >>>> Yes, I did ant clean in xmlvm and in my project several times. >>>> >>>> Markus >>>> >>>> Am 18.03.2011 um 20:14 schrieb Arno Puder: >>>> >>>>> >>>>> 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 >>>>>> >>>> >> > > ------------------------------------------------------------------------------ > 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... > https://lists.sourceforge.net/lists/listinfo/xmlvm-developers |
From: Arno P. <ar...@pu...> - 2011-03-20 17:25:14
|
the vtable patch is the way to go, although we can't commit it yet. It doesn't make sense to invest time and effort to fix the HEAD. One problem with the vtable patch is that it causes many compiler warnings (this will be fixed). Unfortunately Xcode doesn't behave well with many warnings which is probably what you meant with beachballing (get a rebate on those $4! ;) ). In the Xcode project settings, select "Inhibit all warnings" and try to compile again. Arno On 3/20/11 3:18 AM, Markus Heberling wrote: > Hi, > > unfortunaltly XCode now beachballs everytime if I have the vtable patch applied, so can't give you the errors I got... > > But I started xmlvm (without the vtable patch) with debug output and got this for the affected class: > > [java] [03/20/11 11:02:47.869] DEBUG: Size of vtable for class com.sun.media.sound.ModelInstrumentComparator: 13 > [java] [03/20/11 11:02:47.869] DEBUG: Implemented interfaces: > [java] [03/20/11 11:02:47.869] DEBUG: java.util.Comparator > [java] [03/20/11 11:02:47.869] DEBUG: compare: 11 = 12 > [java] [03/20/11 11:02:47.869] DEBUG: equals: 1 = 1 > ... > [java] [03/20/11 11:02:52.066] DEBUG: Vtable index for com.sun.media.sound.ModelInstrumentComparator.compare: 11 > > The funny thing is, that it is working for other classes that implement interfaces, like LinkedList etc... > > Any hint where in the code I could poke around to get this fixed? > > Markus > > Am 18.03.2011 um 20:21 schrieb Arno Puder: > >> >> what errors do you get? >> >> On 3/18/11 12:20 PM, Markus Heberling wrote: >>> Hi, >>> >>> Yes, I did ant clean in xmlvm and in my project several times. >>> >>> Markus >>> >>> Am 18.03.2011 um 20:14 schrieb Arno Puder: >>> >>>> >>>> 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 >>>>> >>> > |
From: Markus H. <ma...@ti...> - 2011-03-20 10:18:40
|
Hi, unfortunaltly XCode now beachballs everytime if I have the vtable patch applied, so can't give you the errors I got... But I started xmlvm (without the vtable patch) with debug output and got this for the affected class: [java] [03/20/11 11:02:47.869] DEBUG: Size of vtable for class com.sun.media.sound.ModelInstrumentComparator: 13 [java] [03/20/11 11:02:47.869] DEBUG: Implemented interfaces: [java] [03/20/11 11:02:47.869] DEBUG: java.util.Comparator [java] [03/20/11 11:02:47.869] DEBUG: compare: 11 = 12 [java] [03/20/11 11:02:47.869] DEBUG: equals: 1 = 1 ... [java] [03/20/11 11:02:52.066] DEBUG: Vtable index for com.sun.media.sound.ModelInstrumentComparator.compare: 11 The funny thing is, that it is working for other classes that implement interfaces, like LinkedList etc... Any hint where in the code I could poke around to get this fixed? Markus Am 18.03.2011 um 20:21 schrieb Arno Puder: > > what errors do you get? > > On 3/18/11 12:20 PM, Markus Heberling wrote: >> Hi, >> >> Yes, I did ant clean in xmlvm and in my project several times. >> >> Markus >> >> Am 18.03.2011 um 20:14 schrieb Arno Puder: >> >>> >>> 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 >>>> >> |
From: Troy G. <tro...@gm...> - 2011-03-18 19:39:23
|
Yes, there is a CLA on file. I was just making sure I wasn't missing something and if this is an issue, it doesn't end up in the C back-end. Thanks. On Fri, Mar 18, 2011 at 2:35 PM, Arno Puder <ar...@pu...> wrote: > > this is one of those reasons we are moving to the C backend. Mapping the > Java object model to the Objective-C object model causes these kinds of > problems. > > Can you please generate a patch and submit to the review system? As long > as we haven't switched to the C backend we're willing to look at > Objective-C patches. (you have a CLA on file, right?) > > Arno > > > On 3/18/11 8:43 AM, Troy Gaines wrote: > > Hello everyone, > > > > It seems like the java.util.HashMap might be implemented incorrectly. > > Either that, or I'm not seeing something. Below is the > > implementation. I had some code that was cross-compiled over which had > > the equals method and hashCode method implemented correctly. > > > > During the program run, it could not find User instances in the map. > > What I discovered is this was only a problem when the User instances > > were separate references even though the equals method and hashCode was > > correct. > > > > I'm thinking the [NSValue valueWithPointer:key] compares references and > > not the underlying values (in this case User). Has anyone seen this > > same issue? This may not even be a problem in the new C back-end, but > > I'm curious what you guys think. The only solution I could come up with > > is to wrap the key in something else and forward the isEqual and hash > > methods. > > > > - (java_lang_Object*) > > put___java_lang_Object_java_lang_Object:(java_lang_Object*) key: > > (java_lang_Object*) value { > > java_lang_Object* oldObj = [self get___java_lang_Object:key]; > > id k = [key conformsToProtocol: @protocol(NSCopying)] ? key : [NSValue > > valueWithPointer: key]; > > [self setObject:value forKey:k]; > > return oldObj; > > } > > > > Thanks again for all the great work! > > > > > > > > > > > ------------------------------------------------------------------------------ > > 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... > > https://lists.sourceforge.net/lists/listinfo/xmlvm-developers > > > ------------------------------------------------------------------------------ > 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... > https://lists.sourceforge.net/lists/listinfo/xmlvm-developers > |
From: Arno P. <ar...@pu...> - 2011-03-18 19:36:00
|
this is one of those reasons we are moving to the C backend. Mapping the Java object model to the Objective-C object model causes these kinds of problems. Can you please generate a patch and submit to the review system? As long as we haven't switched to the C backend we're willing to look at Objective-C patches. (you have a CLA on file, right?) Arno On 3/18/11 8:43 AM, Troy Gaines wrote: > Hello everyone, > > It seems like the java.util.HashMap might be implemented incorrectly. > Either that, or I'm not seeing something. Below is the > implementation. I had some code that was cross-compiled over which had > the equals method and hashCode method implemented correctly. > > During the program run, it could not find User instances in the map. > What I discovered is this was only a problem when the User instances > were separate references even though the equals method and hashCode was > correct. > > I'm thinking the [NSValue valueWithPointer:key] compares references and > not the underlying values (in this case User). Has anyone seen this > same issue? This may not even be a problem in the new C back-end, but > I'm curious what you guys think. The only solution I could come up with > is to wrap the key in something else and forward the isEqual and hash > methods. > > - (java_lang_Object*) > put___java_lang_Object_java_lang_Object:(java_lang_Object*) key: > (java_lang_Object*) value { > java_lang_Object* oldObj = [self get___java_lang_Object:key]; > id k = [key conformsToProtocol: @protocol(NSCopying)] ? key : [NSValue > valueWithPointer: key]; > [self setObject:value forKey:k]; > return oldObj; > } > > Thanks again for all the great work! > > > > > ------------------------------------------------------------------------------ > 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... > https://lists.sourceforge.net/lists/listinfo/xmlvm-developers |
From: Arno P. <ar...@pu...> - 2011-03-18 19:21:30
|
what errors do you get? On 3/18/11 12:20 PM, Markus Heberling wrote: > Hi, > > Yes, I did ant clean in xmlvm and in my project several times. > > Markus > > Am 18.03.2011 um 20:14 schrieb Arno Puder: > >> >> 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 >>> > |
From: Markus H. <ma...@ti...> - 2011-03-18 19:20:34
|
Hi, Yes, I did ant clean in xmlvm and in my project several times. Markus Am 18.03.2011 um 20:14 schrieb Arno Puder: > > 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 >> |
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 > |
From: Markus H. <ma...@ti...> - 2011-03-18 19:09:57
|
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...> 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_Instrument function 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... >> https://lists.sourceforge.net/lists/listinfo/xmlvm-developers |
From: Troy G. <tro...@gm...> - 2011-03-18 15:44:14
|
Hello everyone, It seems like the java.util.HashMap might be implemented incorrectly. Either that, or I'm not seeing something. Below is the implementation. I had some code that was cross-compiled over which had the equals method and hashCode method implemented correctly. During the program run, it could not find User instances in the map. What I discovered is this was only a problem when the User instances were separate references even though the equals method and hashCode was correct. I'm thinking the [NSValue valueWithPointer:key] compares references and not the underlying values (in this case User). Has anyone seen this same issue? This may not even be a problem in the new C back-end, but I'm curious what you guys think. The only solution I could come up with is to wrap the key in something else and forward the isEqual and hash methods. - (java_lang_Object*) put___java_lang_Object_java_lang_Object:(java_lang_Object*) key: (java_lang_Object*) value { java_lang_Object* oldObj = [self get___java_lang_Object:key]; id k = [key conformsToProtocol: @protocol(NSCopying)] ? key : [NSValue valueWithPointer: key]; [self setObject:value forKey:k]; return oldObj; } Thanks again for all the great work! |
From: Arno P. <ar...@pu...> - 2011-03-17 21:29:52
|
Quick question: I'm assuming you were using HEAD. Does this still happen when you use your vtable patch? Arno On Mar 17, 2011, at 1:43 PM, Markus Heberling <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_Instrument function 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... https://lists.sourceforge.net/lists/listinfo/xmlvm-developers |
From: Arno P. <ar...@pu...> - 2011-03-17 21:02:45
|
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...> 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_Instrument function 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... https://lists.sourceforge.net/lists/listinfo/xmlvm-developers |
From: Markus H. <ma...@ti...> - 2011-03-17 20:43:34
|
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_Instrument function 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 |
From: Panayotis K. <pan...@pa...> - 2011-03-15 18:43:28
|
On Mar 15, 2011, at 6:51 PM, Marko Žmak wrote: > Any chance to have a fix soon? I tried the fix you posted and almost works... so basically the fix will be exactly what you provided! |
From: Sascha H. <sa...@xm...> - 2011-03-13 22:16:30
|
Hey guys, for those of you who don't know that yet, I want to bring your attention to two feeds that you can use to stay up to date about what's going on with the source code of XMLVM: First of all there is a feed you can subscribe to in order to get submit messages from our repository. You can find it here: http://sourceforge.net/export/rss2_keepsake.php?group_id=200328 Second of all you can get a feed of all submitted patches to the review system: http://xmlvm-reviews.appspot.com/rss/all // Sascha |