Community
Participate
Working Groups
Build Identifier: 20100617-1415 I created ExtendedItem which serves as container. I can drag&drop report items inside this ExtendedItem. It works perfectly when I drag&drop report item to the end of container, but it fails when I drag&drop report item in front of some item already inserted in container. Problem is in PasteCommand method calculatePositionAndSlotId. Suggested bug fix is attached. Reproducible: Always Steps to Reproduce: 1. Insert ExtendedItem container and two other items into report. 2. Drag&drop the first item into container. 3. Drag&drop the second item into container in front of the first item. 4. Assert slotID >= 0 in DEUtil.findPos occurres. Assert is caused by bug in PasteCommand.calculatePositionAndSlotId().
Created attachment 176221 [details] Suggested bug fix
Thanks for the finding. We'll merge the fix.
Fixed. Thanks a lot.
Verified in daily build 201009080603.
I can confirm that this particular bug is fixed in BIRT 3.7, but I am disappointed, because... 1. Insert ExtendedItem container and two other items into report. 2. Drag&drop Item1 into container. 3. Drag&drop Item2 into container in front of Item1. 4. OK. No assertion occures and Item2 is correctly placed in front of Item1. ----- 5. Drag&drop Item1 in front of Item2. 6. NullPointerException in DEUtil.findInsertPosition(DEUtil.java:676) occures. It wasn't obviously tested at all.
1.-4. as above ----- 5. Drag&drop Item2 behind Item1. 6. ContentException: The report.Body[0] has no slot (id:-1)
Created attachment 198968 [details] Suggested patch.
Fixed.The user can create your FlowMoveChildCommand in the police.Thank for your path.Don't change the DedignElementhandle class,So please check the code of the FlowMoveChildCommand class.