Hi,

I just wrote a one line quick and dirty patch in EditTransaction (line 
316) to fix the problem.
It is not a final choice (I cannot say if it is completely safe) and 
I'll remove it if any request or alert.
Just want to make it easy to test and decide if it is OK until next JTS 
release.

Michaël

Martin Davis a écrit :
> Good point, Stefan.   I have to admit, Jon wrote all of that code, so 
> I'm probably no more able to decide whether the modification is safe.
>
> Here's an idea - while you're waiting for JTS 1.11.1 or JTS 1.12 with 
> the fix, why not encapsulate the validity check in a
>
> GeometryUtil.isValidOrNull(Geometry g)
>
> as I suggested earlier.  Then the logic can easily be added to check for 
> empty POINTs and return valid for them.
>
>
> Stefan Steiniger wrote:
>   
>> thanks for fixing and discussing,
>>
>> now, I would prefer to leave the OJ code as is, and wait for JTS NB (or 
>> something alike). Because I don't see an elegant way to avoid isValid 
>> checks for EditTransactions.commit(), without telling what type of 
>> transaction is done.
>>
>> I.e. we need to do EditTransactions.commit() right?
>> as performed in DeleteSelectedItemsPlugIn.java:99
>>
>> if not, I would rather change code here, before touching/changing 
>> something in EditTransaction that allows the delivery of the transaction 
>> type.
>>
>> mhm.. I am honestly a bit scared to do changes here, because I can not 
>> assess what a change in the EditTransaction code can have for side 
>> effects - especially with respect to writing something back to real 
>> databases. So if a skilled person like Larry or Martin (as the JUMP 
>> designer) or Michael or Andreas would propose and do changes - I am 
>> totally happy with it.
>> Though.. preferring still no code changes at all and rather a change of JTS.
>>
>> puzzled
>> stefan
>>
>> Martin Davis wrote:
>>   
>>     
>>> But not a *good* reason!  8^)    For obvious reasons...  !
>>>
>>> Larry Becker wrote:
>>>     
>>>       
>>>> Hi Martin,
>>>>
>>>>   Thanks for the fix.  Assuming you meant "why OJ is testing for validity 
>>>> on
>>>> a delete", the answer may be because it makes the code simpler.  Not the
>>>> best reason, but it is a reason.  :-)
>>>>
>>>> regards,
>>>> Larry
>>>>
>>>> On Tue, Mar 23, 2010 at 10:52 AM, Martin Davis 
>>>> <mbda...@refractions.net>wrote:
>>>>
>>>>   
>>>>       
>>>>         
>>>>> Yes, POINT EMPTY is valid.  This is a bug in JTS.  I'll fix this today.
>>>>> Thanks, Michael!
>>>>>
>>>>> One thing that doesn't make sense to me is why JTS is testing for
>>>>> validity on a delete?  Surely it's safe to NOT do this, even for Undo?
>>>>>
>>>>>
>>>>> Michaël Michaud wrote:
>>>>>     
>>>>>         
>>>>>           
>>>>>> Hi Martin, all,
>>>>>>
>>>>>> Finally, I think the problem could be a consistency problem in JTS.
>>>>>> JTS accepts empty Points, empty LineStrings and empty Polygons created
>>>>>>       
>>>>>>           
>>>>>>             
>>>>> with
>>>>>     
>>>>>         
>>>>>           
>>>>>> factory.createPoint(null) -> POINT EMPTY
>>>>>> factory.createLineString(null) -> LINESTRING EMPTY
>>>>>> factory.createPolygon(null,null) -> POLYGON EMPTY
>>>>>>
>>>>>> empty LineString and empty Polygon, which hold an empty
>>>>>> CoordinateSequence are seen as valid Geometries
>>>>>>
>>>>>> on the other hand, empty Point, which also holds an empty
>>>>>> CoordinateSequence throws an exception while tested for its validity
>>>>>> The reason is Point.isValid() does not test its CoordinateSequence but
>>>>>> tests the validity of Point.getCoordinate(), which returns a null in
>>>>>> this case.
>>>>>>
>>>>>> Could you confirm POINT EMPTY should be considered as a valid Geometry ?
>>>>>>
>>>>>> Michaël
>>>>>>
>>>>>> Stefan Steiniger a écrit :
>>>>>>
>>>>>>       
>>>>>>           
>>>>>>             
>>>>>>> Hei,
>>>>>>>
>>>>>>> so by looking on the JUMP code,
>>>>>>>
>>>>>>> deleting always creates a null geometry:
>>>>>>> com.vividsolutions.jump.workbench.ui.GeometryEditor.remove(Geometry g,
>>>>>>> Geometry itemToRemove)
>>>>>>>
>>>>>>> calls
>>>>>>>
>>>>>>>
>>>>>>>         
>>>>>>>             
>>>>>>>               
>>>>> com.vividsolutions.jump.workbench.ui.GeometryEditor.createNullGeometry(Class
>>>>>     
>>>>>         
>>>>>           
>>>>>>> geometryClass)
>>>>>>>
>>>>>>> so, we could do the change in createNullGeometry() [though I don't
>>>>>>> really like the idea here to create an empty GeometryCollection is
>>>>>>> Michael did for the other positions] or in
>>>>>>>
>>>>>>>
>>>>>>>         
>>>>>>>             
>>>>>>>               
>>>>> com.vividsolutions.jump.workbench.ui.EditTransaction.proposedGeometriesValid()
>>>>>     
>>>>>         
>>>>>           
>>>>>>> by catching null geometries here and not checking them.
>>>>>>>
>>>>>>> or.. of course... both.
>>>>>>>
>>>>>>> any suggestions by you Larry, Michael, Martin?
>>>>>>> Probably the second solution is best?
>>>>>>>
>>>>>>>
>>>>>>> ohh.. @Martin, actually, if that only happens for point geometries
>>>>>>> now... what is with the other geometry.isValid operations... why don't
>>>>>>> they return an error if null geomtries are created?
>>>>>>>
>>>>>>> stefan
>>>>>>>
>>>>>>> Martin Davis wrote:
>>>>>>>
>>>>>>>
>>>>>>>         
>>>>>>>             
>>>>>>>               
>>>>>>>> Ah, yes, right.  This was a bug fix introduced in JTS 1.11, to ensure
>>>>>>>> that Point.isValid checked for invalid (eg NaN) coordinates.
>>>>>>>>
>>>>>>>> In general, the contract for IsValid does not support "null" being
>>>>>>>> passed as in input argument.  OJ should not be trying to determine the
>>>>>>>> validity of a null geometry - it needs to detect this situation and
>>>>>>>>           
>>>>>>>>               
>>>>>>>>                 
>>>>> make
>>>>>     
>>>>>         
>>>>>           
>>>>>>>> its own decision about whether null is valid or not.
>>>>>>>>
>>>>>>>> So I think the way you'd sum this up is that a bug in JTS 1.10 masked a
>>>>>>>> bug in OJ.
>>>>>>>>
>>>>>>>> Larry, I think your fix should take care of this in OJ.  If it were me
>>>>>>>>           
>>>>>>>>               
>>>>>>>>                 
>>>>> I
>>>>>     
>>>>>         
>>>>>           
>>>>>>>> would encapsulate that logic in a general-purpose utility method called
>>>>>>>> something like GeometryUtil.isValidOrNull(Geometry g).  That gives a
>>>>>>>> single functionality point for the design decision to allow nulls as
>>>>>>>> valid geometry, in case it needs to be changed in the future.
>>>>>>>>
>>>>>>>> Larry Becker wrote:
>>>>>>>>
>>>>>>>>
>>>>>>>>           
>>>>>>>>               
>>>>>>>>                 
>>>>>>>>> I see that prior versions of JTS Point.isValid() didn't call
>>>>>>>>> IsValidOP.isValid().  It just returned trure.
>>>>>>>>>
>>>>>>>>> Stepping though the debugger, isValid is throwing an NPE when it does
>>>>>>>>>             
>>>>>>>>>                 
>>>>>>>>>                   
>>>>> the
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>> getCoordinate().
>>>>>>>>>
>>>>>>>>>   public boolean isValid() {
>>>>>>>>>       if (! IsValidOp.isValid(getCoordinate()))
>>>>>>>>>           return false;
>>>>>>>>>     return true;
>>>>>>>>>   }
>>>>>>>>>
>>>>>>>>> Larry
>>>>>>>>>
>>>>>>>>> On Mon, Mar 22, 2010 at 3:58 PM, Larry Becker <becker.la...@gmail.com
>>>>>>>>>             
>>>>>>>>>                 
>>>>>>>>>                   
>>>>>> wrote:
>>>>>>       
>>>>>>           
>>>>>>             
>>>>>>>>>             
>>>>>>>>>                 
>>>>>>>>>                   
>>>>>>>>>> There are no changes in the SVN history for several months before 24
>>>>>>>>>> February that seem relevant.  I made a bunch of changes to rendering
>>>>>>>>>>               
>>>>>>>>>>                   
>>>>>>>>>>                     
>>>>> and
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>> such, but nothing related to EditTransactions.
>>>>>>>>>>
>>>>>>>>>> I happened to have a copy of OJ dated 22 February and it does not
>>>>>>>>>>               
>>>>>>>>>>                   
>>>>>>>>>>                     
>>>>> have the
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>> delete point problem.  Can't say for sure when it started though.
>>>>>>>>>>
>>>>>>>>>> Larry
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> On Mon, Mar 22, 2010 at 3:48 PM, Larry Becker <
>>>>>>>>>>               
>>>>>>>>>>                   
>>>>>>>>>>                     
>>>>> becker.la...@gmail.com>wrote:
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>               
>>>>>>>>>>                   
>>>>>>>>>>                     
>>>>>>>>>>> Hi Michaël,
>>>>>>>>>>>
>>>>>>>>>>>   Yes, I am using the latest SVN version.  You can do the test
>>>>>>>>>>>                 
>>>>>>>>>>>                     
>>>>>>>>>>>                       
>>>>> yourself in
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>> a few minutes.
>>>>>>>>>>>
>>>>>>>>>>>   I just checked and SkyJUMP and OJ both have identical code to
>>>>>>>>>>>                 
>>>>>>>>>>>                     
>>>>>>>>>>>                       
>>>>> handle
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>> deleting selected items, except for the changes Michaël made to
>>>>>>>>>>> EditTransaction and the JTS version. Those changes were made in
>>>>>>>>>>>                 
>>>>>>>>>>>                     
>>>>>>>>>>>                       
>>>>> March.
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>> SkyJUMP does not have the problem yet.
>>>>>>>>>>>
>>>>>>>>>>> @Stefan,  what are the changes for null geometries that you spoke
>>>>>>>>>>>                 
>>>>>>>>>>>                     
>>>>>>>>>>>                       
>>>>> of?
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>> Larry
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> 2010/3/22 Michaël Michaud <michael.mich...@free.fr>
>>>>>>>>>>>
>>>>>>>>>>> Hi Stefan and others,
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>                 
>>>>>>>>>>>                     
>>>>>>>>>>>                       
>>>>>>>>>>>> Did you check OJ with the svn code.
>>>>>>>>>>>> I have fixed EditTransaction a few days ago.
>>>>>>>>>>>> Fo a reason, in the EditTrasaction process, two methods created a
>>>>>>>>>>>> Point(null,null,0) geometry.
>>>>>>>>>>>> This geometry did not throw NPE... until JTS 1.11
>>>>>>>>>>>> I replaced Point(null,null,0) by an empty GeometryCollection.
>>>>>>>>>>>> Hope it does the trick.
>>>>>>>>>>>>
>>>>>>>>>>>> Miichaël
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>> Hei,
>>>>>>>>>>>>>
>>>>>>>>>>>>> I haven't found the time to look into it, but I got this error
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> report
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>> from Bernd:
>>>>>>>>>>>>>
>>>>>>>>>>>>> the issue is that he can not delete point features in existing
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> projects
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>> or even just created tets layers. (must have been introduced to
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> the NB
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>> after Feb 24th)
>>>>>>>>>>>>>
>>>>>>>>>>>>> ava.lang.NullPointerException
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> com.vividsolutions.jts.operation.valid.IsValidOp.isValid(IsValidOp.java:62)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> com.vividsolutions.jts.geom.Point.isValid(Point.java:117)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> com.vividsolutions.jump.workbench.ui.EditTransaction.proposedGeometriesValid(EditTransaction.java:315)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> com.vividsolutions.jump.workbench.ui.EditTransaction.commit(EditTransaction.java:256)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> com.vividsolutions.jump.workbench.ui.EditTransaction.commit(EditTransaction.java:235)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> com.vividsolutions.jump.workbench.ui.plugin.DeleteSelectedItemsPlugIn.execute(DeleteSelectedItemsPlugIn.java:99)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> com.vividsolutions.jump.workbench.plugin.AbstractPlugIn$1.actionPerformed(AbstractPlugIn.java:130)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> com.vividsolutions.jump.workbench.ui.WorkbenchFrame$24.keyPressed(WorkbenchFrame.java:1142)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> com.vividsolutions.jump.workbench.ui.WorkbenchFrame$9.keyPressed(WorkbenchFrame.java:353)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.AWTEventMulticaster.keyPressed(AWTEventMulticaster.java:233)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.Component.processKeyEvent(Component.java:6221)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>>>>>>>>> javax.swing.JComponent.processKeyEvent(JComponent.java:2801)
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at java.awt.Component.processEvent(Component.java:6040)
>>>>>>>>>>>>>          at java.awt.Container.processEvent(Container.java:2041)
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.Component.dispatchEventImpl(Component.java:4630)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.Container.dispatchEventImpl(Container.java:2099)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>>          at java.awt.Component.dispatchEvent(Component.java:4460)
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.KeyboardFocusManager.redispatchEvent(KeyboardFocusManager.java:1848)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(DefaultKeyboardFocusManager.java:704)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(DefaultKeyboardFocusManager.java:969)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(DefaultKeyboardFocusManager.java:841)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.DefaultKeyboardFocusManager.dispatchEvent(DefaultKeyboardFocusManager.java:668)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.Component.dispatchEventImpl(Component.java:4502)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.Container.dispatchEventImpl(Container.java:2099)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>>          at java.awt.Window.dispatchEventImpl(Window.java:2475)
>>>>>>>>>>>>>          at java.awt.Component.dispatchEvent(Component.java:4460)
>>>>>>>>>>>>>          at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>>          at
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>>>>>>>>> java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> ------------------------------------------------------------------------------
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>>> Download Intel&#174; Parallel Studio Eval
>>>>>>>>>>>>> Try the new software tools for yourself. Speed compiling, find
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> bugs
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>>> proactively, and fine-tune applications for parallel performance.
>>>>>>>>>>>>> See why Intel Parallel Studio got high marks during beta.
>>>>>>>>>>>>> http://p.sf.net/sfu/intel-sw-dev
>>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>>> Jump-pilot-devel mailing list
>>>>>>>>>>>>> Jump-pilot-devel@lists.sourceforge.net
>>>>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>                     
>>>>>>>>>>>>>                         
>>>>>>>>>>>>>                           
>>>>> ------------------------------------------------------------------------------
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>>>> Download Intel&#174; Parallel Studio Eval
>>>>>>>>>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>>>>>>>>>> proactively, and fine-tune applications for parallel performance.
>>>>>>>>>>>> See why Intel Parallel Studio got high marks during beta.
>>>>>>>>>>>> http://p.sf.net/sfu/intel-sw-dev
>>>>>>>>>>>> _______________________________________________
>>>>>>>>>>>> Jump-pilot-devel mailing list
>>>>>>>>>>>> Jump-pilot-devel@lists.sourceforge.net
>>>>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>                   
>>>>>>>>>>>>                       
>>>>>>>>>>>>                         
>>>>>>>>>>>                 
>>>>>>>>>>>                     
>>>>>>>>>>>                       
>>>>>>>>>             
>>>>>>>>>                 
>>>>>>>>>                   
>>>>> ------------------------------------------------------------------------
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>>             
>>>>>>>>>                 
>>>>>>>>>                   
>>>>> ------------------------------------------------------------------------------
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>> Download Intel&#174; Parallel Studio Eval
>>>>>>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>>>>>>> proactively, and fine-tune applications for parallel performance.
>>>>>>>>> See why Intel Parallel Studio got high marks during beta.
>>>>>>>>> http://p.sf.net/sfu/intel-sw-dev
>>>>>>>>>
>>>>>>>>>             
>>>>>>>>>                 
>>>>>>>>>                   
>>>>> ------------------------------------------------------------------------
>>>>>     
>>>>>         
>>>>>           
>>>>>>>>> _______________________________________________
>>>>>>>>> Jump-pilot-devel mailing list
>>>>>>>>> Jump-pilot-devel@lists.sourceforge.net
>>>>>>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>             
>>>>>>>>>                 
>>>>>>>>>                   
>>>>> ------------------------------------------------------------------------------
>>>>>     
>>>>>         
>>>>>           
>>>>>>> Download Intel&#174; Parallel Studio Eval
>>>>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>>>>> proactively, and fine-tune applications for parallel performance.
>>>>>>> See why Intel Parallel Studio got high marks during beta.
>>>>>>> http://p.sf.net/sfu/intel-sw-dev
>>>>>>> _______________________________________________
>>>>>>> Jump-pilot-devel mailing list
>>>>>>> Jump-pilot-devel@lists.sourceforge.net
>>>>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>         
>>>>>>>             
>>>>>>>               
>>>>>>       
>>>>>>           
>>>>>>             
>>>>> ------------------------------------------------------------------------------
>>>>>     
>>>>>         
>>>>>           
>>>>>> Download Intel&#174; Parallel Studio Eval
>>>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>>>> proactively, and fine-tune applications for parallel performance.
>>>>>> See why Intel Parallel Studio got high marks during beta.
>>>>>> http://p.sf.net/sfu/intel-sw-dev
>>>>>> _______________________________________________
>>>>>> Jump-pilot-devel mailing list
>>>>>> Jump-pilot-devel@lists.sourceforge.net
>>>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>>>>
>>>>>>
>>>>>>       
>>>>>>           
>>>>>>             
>>>>> --
>>>>> Martin Davis
>>>>> Senior Technical Architect
>>>>> Refractions Research, Inc.
>>>>> (250) 383-3022
>>>>>
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> Download Intel&#174; Parallel Studio Eval
>>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>>> proactively, and fine-tune applications for parallel performance.
>>>>> See why Intel Parallel Studio got high marks during beta.
>>>>> http://p.sf.net/sfu/intel-sw-dev
>>>>> _______________________________________________
>>>>> Jump-pilot-devel mailing list
>>>>> Jump-pilot-devel@lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>>>
>>>>>     
>>>>>         
>>>>>           
>>>>   
>>>> ------------------------------------------------------------------------
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Download Intel&#174; Parallel Studio Eval
>>>> Try the new software tools for yourself. Speed compiling, find bugs
>>>> proactively, and fine-tune applications for parallel performance.
>>>> See why Intel Parallel Studio got high marks during beta.
>>>> http://p.sf.net/sfu/intel-sw-dev
>>>> ------------------------------------------------------------------------
>>>>
>>>> _______________________________________________
>>>> Jump-pilot-devel mailing list
>>>> Jump-pilot-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>>>   
>>>>       
>>>>         
>> ------------------------------------------------------------------------------
>> Download Intel&#174; Parallel Studio Eval
>> Try the new software tools for yourself. Speed compiling, find bugs
>> proactively, and fine-tune applications for parallel performance.
>> See why Intel Parallel Studio got high marks during beta.
>> http://p.sf.net/sfu/intel-sw-dev
>> _______________________________________________
>> Jump-pilot-devel mailing list
>> Jump-pilot-devel@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>>
>>   
>>     
>
>   


------------------------------------------------------------------------------
Download Intel&#174; Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Jump-pilot-devel mailing list
Jump-pilot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to