Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 249760

Summary: Creating a generalization from a Signal to a Class creates a stack overflow
Product: [Modeling] Papyrus Reporter: Jerome BENOIS <jerome.benois>
Component: CoreAssignee: Patrick Tessier <Patrick.Tessier>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P3 CC: Patrick.Tessier
Version: 0.7.0Keywords: plan
Target Milestone: M1   
Hardware: All   
OS: All   
Whiteboard:

Description Jerome BENOIS CLA 2008-10-06 09:20:17 EDT
Creating a generalization from a Signal (sub-class) to a Class (super-class) creates a stack overflow. An java.lang.StackOverflowError occured.

It seems the goes into an infinite loop creating many Generalizations in the model.

  AbstractionCreateCommand < CreateElementCommand
    doDefaultElementCreation() -> createGeneralization()
    getEditCommand(configureRequest) -> 
      AbstractionEditHelper.getEditCommand(req)  ->
        AbstractionEditHelper.getEditCommand(req, advice)

          // Check if the parameter has been set to ignore the default edit command.
          Object replaceParam = req.getParameter(IEditCommandRequest.REPLACE_DEFAULT_COMMAND); // == null
	  getInsteadCommand() ->
	    UMLBaseEditHelper.getInsteadCommand() ->
	      req.getParameter(EDIT_POLICY_COMMAND) -> AbstractionCreateCommand
    configureCommand.execute() -> AbstractionCreateCommand -> loop
Comment 1 Patrick Tessier CLA 2008-10-09 04:42:53 EDT
maybe a problem of mapping
Comment 2 Patrick Tessier CLA 2008-10-13 05:51:12 EDT
This problem comes from configureCommand, a advice has been send to the gmf newsgroup. 

 Until receveing a response, the method  doExecuteWithResult will be overloaded.
 
Comment 3 Patrick Tessier CLA 2008-10-13 05:51:47 EDT
fixe bug