Bug 474510 - NPE while Trying to Read Sync Configuration Name in Wizard
Summary: NPE while Trying to Read Sync Configuration Name in Wizard
Status: NEW
Alias: None
Product: PTP
Classification: Tools
Component: RDT.sync (show other bugs)
Version: 9.0   Edit
Hardware: All All
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-08-07 11:22 EDT by EPP Error Reports CLA
Modified: 2015-08-13 14:09 EDT (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description EPP Error Reports CLA 2015-08-07 11:22:28 EDT
The following incident was reported via the automated error reporting:


    code:                   0
    plugin:                 org.eclipse.ui_3.107.0.v20150507-1945
    message:                Unhandled event loop exception
    fingerprint:            68815b2d
    exception class:        java.lang.NullPointerException
    exception message:      -
    number of children:     0
    
    java.lang.NullPointerException: null
    at org.eclipse.ptp.internal.rdt.sync.git.ui.GitParticipant.getSyncConfigName(GitParticipant.java:253)
    at org.eclipse.ptp.rdt.sync.ui.widgets.SyncProjectWidget.getSyncConfigName(SyncProjectWidget.java:243)
    at org.eclipse.ptp.internal.rdt.sync.cdt.ui.wizards.SyncMainWizardPage.getSyncConfigNames(SyncMainWizardPage.java:979)
    at org.eclipse.ptp.internal.rdt.sync.cdt.ui.wizards.SyncMainWizardPage.update(SyncMainWizardPage.java:967)
    at org.eclipse.ptp.internal.rdt.sync.cdt.ui.wizards.SyncMainWizardPage.getMessage(SyncMainWizardPage.java:381)
    at org.eclipse.jface.wizard.WizardDialog.updateMessage(WizardDialog.java:1352)
    at org.eclipse.ptp.internal.rdt.sync.git.ui.GitParticipant.update(GitParticipant.java:311)
    at org.eclipse.ptp.internal.rdt.sync.git.ui.GitParticipant.access$1(GitParticipant.java:310)
    at org.eclipse.ptp.internal.rdt.sync.git.ui.GitParticipant$2.modifyText(GitParticipant.java:131)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:179)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4362)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1113)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1137)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1118)
    at org.eclipse.swt.widgets.Text.wmCommandChild(Text.java:3073)
    at org.eclipse.swt.widgets.Control.WM_COMMAND(Control.java:4810)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4665)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5050)
    at org.eclipse.swt.internal.win32.OS.CallWindowProcW(OS.java:-2)
    at org.eclipse.swt.internal.win32.OS.CallWindowProc(OS.java:2443)
    at org.eclipse.swt.widgets.Text.callWindowProc(Text.java:260)
    at org.eclipse.swt.widgets.Control.windowProc(Control.java:4760)
    at org.eclipse.swt.widgets.Text.windowProc(Text.java:2673)
    at org.eclipse.swt.widgets.Display.windowProc(Display.java:5050)
    at org.eclipse.swt.internal.win32.OS.SetWindowTextW(OS.java:-2)
    at org.eclipse.swt.internal.win32.OS.SetWindowText(OS.java:3473)
    at org.eclipse.swt.widgets.Text.setText(Text.java:2274)
    at org.eclipse.ptp.internal.rdt.sync.git.ui.GitParticipant.handleConnectionSelected(GitParticipant.java:276)
    at org.eclipse.ptp.internal.rdt.sync.git.ui.GitParticipant.access$0(GitParticipant.java:274)
    at org.eclipse.ptp.internal.rdt.sync.git.ui.GitParticipant$1.widgetSelected(GitParticipant.java:113)
    at org.eclipse.remote.ui.widgets.RemoteConnectionWidget.notifyListeners(RemoteConnectionWidget.java:579)
    at org.eclipse.remote.ui.widgets.RemoteConnectionWidget.handleConnectionSelected(RemoteConnectionWidget.java:422)
    at org.eclipse.remote.ui.widgets.RemoteConnectionWidget$WidgetListener.widgetSelected(RemoteConnectionWidget.java:107)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:248)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4362)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1113)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4180)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3769)
    at org.eclipse.jface.window.Window.runEventLoop(Window.java:827)
    at org.eclipse.jface.window.Window.open(Window.java:803)
    at org.eclipse.ui.actions.NewProjectAction.run(NewProjectAction.java:115)
    at org.eclipse.jface.action.Action.runWithEvent(Action.java:473)
    at org.eclipse.jface.action.ActionContributionItem.handleWidgetSelection(ActionContributionItem.java:595)
    at org.eclipse.jface.action.ActionContributionItem.access$2(ActionContributionItem.java:511)
    at org.eclipse.jface.action.ActionContributionItem$5.handleEvent(ActionContributionItem.java:420)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Display.sendEvent(Display.java:4362)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1113)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4180)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3769)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$4.run(PartRenderingEngine.java:1127)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
    at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1018)
    at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:156)
    at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:654)
    at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:337)
    at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:598)
    at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:150)
    at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:139)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(null:-2)
    at sun.reflect.NativeMethodAccessorImpl.invoke(null:-1)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(null:-1)
    at java.lang.reflect.Method.invoke(null:-1)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1515)
    at org.eclipse.equinox.launcher.Main.main(Main.java:1488)
   
  

General Information:

    reported-by:      edl
    anonymous-id:     cdfbbd2a-3366-4576-87dc-e2c1708941be
    eclipse-build-id: 4.5.0.I20150603-2000
    eclipse-product:  org.eclipse.epp.package.parallel.product
    operating system: Windows7 6.1.0 (x86_64) - win32
    jre-version:      1.7.0_51-b13

The following plug-ins were present on the execution stack (*):
    1. org.eclipse.core.databinding.observable_1.5.0.v20150422-0725
    2. org.eclipse.core.databinding_1.5.0.v20150422-0725
    3. org.eclipse.core.runtime_3.11.0.v20150405-1723
    4. org.eclipse.e4.ui.workbench_1.3.0.v20150531-1948
    5. org.eclipse.e4.ui.workbench.swt_0.13.0.v20150504-0621
    6. org.eclipse.equinox.app_1.3.300.v20150423-1356
    7. org.eclipse.equinox.launcher_1.3.100.v20150511-1540
    8. org.eclipse.jface_3.11.0.v20150602-1400
    9. org.eclipse.ptp.rdt.sync.cdt.ui_1.0.0.201506101404
    10. org.eclipse.ptp_9.0.0.201506101404
    11. org.eclipse.ptp.rdt.sync.git.ui_1.0.0.201506101404
    12. org.eclipse.ptp.rdt.sync.ui_2.0.0.201506101404
    13. org.eclipse.remote.ui_2.0.0.201506061609
    14. org.eclipse.swt_3.104.0.v20150528-0211
    15. org.eclipse.ui_3.107.0.v20150507-1945
    16. org.eclipse.ui.ide.application_1.1.0.v20150422-0725
    17. org.eclipse.ui.ide_3.11.0.v20150510-1749

Please note that:
* Messages, stacktraces, and nested status objects may be shortened.
* Bug fields like status, resolution, and whiteboard are sent
  back to reporters.
* The list of present bundles and their respective versions was
  calculated by package naming heuristics. This may or may not reflect reality.

Other Resources:
* Report: https://dev.eclipse.org/recommenders/committers/confess/#/problems/55c33be9e4b0d6907d415694  
* Manual: https://dev.eclipse.org/recommenders/community/confess/#/guide


Thank you for your assistance.
Your friendly error-reports-inbox.

This bug was created on behalf of jeblen@acm.org.
Comment 1 John Eblen CLA 2015-08-13 14:09:06 EDT
I was able to reproduce this bug as follows:

1) File -> New -> Synchronized C/C++ Project
2) Complete all required steps, including selecting a project type
3) Change "Connection Name" back to "Please select a connection"

I think there are actually three bugs:

1) GitParticipant.getSyncConfigName doesn't check for null.

2) After selecting a connection, going back to "Please select a connection" does not invalidate the page. (The "Finish" button remains active after step 3.)

3) The UI lets the user select "Please select a connection". Fixing this would fix 2 as well.