Bug 7337

Summary: NPE when pasting a member (that got deleted)
Product: [Eclipse Project] JDT Reporter: Erich Gamma <erich_gamma>
Component: UIAssignee: Adam Kiezun <akiezun>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P1    
Version: 2.0   
Target Milestone: ---   
Hardware: PC   
OS: Windows 2000   
Whiteboard:

Description Erich Gamma CLA 2002-01-08 05:35:29 EST
1) create a class with members a and b
2) copy a in the packages view (while show members is enabled)
3) delete a in the packages view
4) paste in the packages view
->NPE

4 org.eclipse.ui 0 java.lang.NullPointerException
java.lang.NullPointerException
        at org.eclipse.jdt.internal.corext.codemanipulation.MemberEdit.connect(M
emberEdit.java:96)
        at org.eclipse.jdt.internal.corext.codemanipulation.TextBufferEditor.add
TextEdit(TextBufferEditor.java:86)
        at org.eclipse.jdt.internal.ui.reorg.PasteSourceReferencesAction.paste(P
asteSourceReferencesAction.java:155)
        at org.eclipse.jdt.internal.ui.reorg.PasteSourceReferencesAction.perform
(PasteSourceReferencesAction.java:139)
        at org.eclipse.jdt.internal.ui.reorg.PasteSourceReferencesAction$1.run(P
asteSourceReferencesAction.java:126)
        at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:56)

        at org.eclipse.jdt.internal.ui.reorg.PasteSourceReferencesAction.run(Pas
teSourceReferencesAction.java:123)
        at org.eclipse.jface.action.Action.runWithEvent(Action.java:452)
        at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection
(ActionContributionItem.java:407)
        at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent(Act
ionContributionItem.java(Compiled Code))
        at org.eclipse.jface.action.ActionContributionItem$ActionListener.handle
Event(ActionContributionItem.java(Compiled Code))
        at org.eclipse.jface.action.ActionContributionItem$ActionListener.handle
Event(ActionContributionItem.java(Compiled Code))
        at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled C
ode))
        at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java(Compiled C
ode))
        at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java(Compil
ed Code))
        at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java(Compiled
 Code))
        at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java(Compile
d Code))
        at org.eclipse.ui.internal.Workbench.run(Workbench.java:758)
        at org.eclipse.core.internal.boot.InternalBootLoader.run(InternalBootLoa
der.java:820)
        at org.eclipse.core.boot.BootLoader.run(BootLoader.java:285)
        at java.lang.reflect.Method.invoke(Native Method)
        at org.eclipse.core.launcher.Main.basicRun(Main.java:151)
        at org.eclipse.core.launcher.Main.run(Main.java:502)
        at org.eclipse.core.launcher.UIMain.main(UIMain.java:52)
java.lang.NullPointerException
Comment 1 Adam Kiezun CLA 2002-01-08 11:51:51 EST
can't reproduce
please give the class source code 
and specify what is selected when you 'paste'
do you save the file after 3) ?
Comment 2 Erich Gamma CLA 2002-01-10 08:56:40 EST
can still reproduce.
more precise steps:
Type ttt
method m1

1) select m1 
2) copy
3) delete
4) select ttt
5) paste
->NPE
Comment 3 Adam Kiezun CLA 2002-01-14 11:40:54 EST
reproduced. investigating
Comment 4 Adam Kiezun CLA 2002-01-14 11:42:05 EST
new stack trace:
java.lang.NullPointerException
	at org.eclipse.jdt.internal.corext.codemanipulation.MemberEdit.connect
(MemberEdit.java:108)
	at 
org.eclipse.jdt.internal.corext.textmanipulation.TextBufferEditor.internalAdd
(TextBufferEditor.java:207)
	at org.eclipse.jdt.internal.corext.textmanipulation.TextBufferEditor.add
(TextBufferEditor.java:78)
	at org.eclipse.jdt.internal.ui.reorg.PasteSourceReferencesAction.paste
(PasteSourceReferencesAction.java:156)
	at org.eclipse.jdt.internal.ui.reorg.PasteSourceReferencesAction.perform
(PasteSourceReferencesAction.java:140)
	at org.eclipse.jdt.internal.ui.reorg.PasteSourceReferencesAction$1.run
(PasteSourceReferencesAction.java:127)
	at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:56)
	at org.eclipse.jdt.internal.ui.reorg.PasteSourceReferencesAction.run
(PasteSourceReferencesAction.java:124)
	at org.eclipse.jface.action.Action.runWithEvent(Action.java:452)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection
(ActionContributionItem.java:407)
	at org.eclipse.jface.action.ActionContributionItem.handleWidgetEvent
(ActionContributionItem.java:361)
	at org.eclipse.jface.action.ActionContributionItem.access$0
(ActionContributionItem.java:352)
	at 
org.eclipse.jface.action.ActionContributionItem$ActionListener.handleEvent
(ActionContributionItem.java:47)
	at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java
(Compiled Code))
	at org.eclipse.swt.widgets.Widget.notifyListeners(Widget.java:637)
	at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java
(Compiled Code))
	at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java
(Compiled Code))
	at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java
(Compiled Code))
	at org.eclipse.ui.internal.Workbench.run(Workbench.java:798)
	at org.eclipse.core.internal.boot.InternalBootLoader.run
(InternalBootLoader.java:821)
	at org.eclipse.core.boot.BootLoader.run(BootLoader.java:285)
	at SlimLauncher.main(SlimLauncher.java:14)
Comment 5 Adam Kiezun CLA 2002-01-15 05:40:17 EST
working copy management horror again!
Comment 6 Adam Kiezun CLA 2002-01-15 06:02:26 EST
fixed