Bug 123233 [build path] link source wizard creates invalid folder
20060110 - Open build paty > link source - enter a source folder name but leave the location empty - folder is created - Open the properties on the new folder -> NPE java.lang.NullPointerException at org.eclipse.core.internal.filesystem.InternalFileSystemCore.getFileSystem(InternalFileSystemCore.java:62) at org.eclipse.core.filesystem.EFS.getFileSystem(EFS.java:248) at org.eclipse.ui.internal.ide.dialogs.ResourceInfoPage.createStateGroup(ResourceInfoPage.java:428) at org.eclipse.ui.internal.ide.dialogs.ResourceInfoPage.createContents(ResourceInfoPage.java:251) at org.eclipse.jface.preference.PreferencePage.createControl(PreferencePage.java:232) at org.eclipse.jface.preference.PreferenceDialog.createPageControl(PreferenceDialog.java:1371) at org.eclipse.jface.preference.PreferenceDialog$12.run(PreferenceDialog.java:1138) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.runtime.Platform.run(Platform.java:785) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:148) at org.eclipse.jface.preference.PreferenceDialog.showPage(PreferenceDialog.java:1132) at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.showPage(FilteredPreferenceDialog.java:350) at org.eclipse.jface.preference.PreferenceDialog$8.selectionChanged(PreferenceDialog.java:638) at org.eclipse.jface.viewers.StructuredViewer$3.run(StructuredViewer.java:802) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:37) at org.eclipse.core.runtime.Platform.run(Platform.java:785) at org.eclipse.ui.internal.JFaceUtil$1.run(JFaceUtil.java:44) at org.eclipse.jface.util.SafeRunnable.run(SafeRunnable.java:148) at org.eclipse.jface.viewers.StructuredViewer.firePostSelectionChanged(StructuredViewer.java:800) at org.eclipse.jface.viewers.StructuredViewer.setSelection(StructuredViewer.java:1511) at org.eclipse.jface.preference.PreferenceDialog.selectSavedItem(PreferenceDialog.java:925) at org.eclipse.ui.internal.dialogs.FilteredPreferenceDialog.selectSavedItem(FilteredPreferenceDialog.java:393)
org.eclipse.jdt.ui/ui/org/eclipse/jdt/internal/ui/wizards/buildpaths/AddSourceFolderWizardPage.java
fModifiedElements.addAll(modified);
			CPListElement.insert(fNewElement, fExistingEntries);
		} else {
			
			if (projectEntryIndex != -1) {
				isProjectAsSourceFolder= true;
				if (fReplaceExistingField.isSelected()) {
					fOldProjectSourceFolder= (CPListElement)fExistingEntries.get(projectEntryIndex);
					fRemovedElements.add(fOldProjectSourceFolder);
					fExistingEntries.set(projectEntryIndex, fNewElement);
				} else {
					CPListElement.insert(fNewElement, fExistingEntries);
				}
			} else {
				CPListElement.insert(fNewElement, fExistingEntries);
			}
		}
		
		IJavaModelStatus status= JavaConventions.validateClasspath(javaProject, CPListElement.convertToClasspathEntries(fExistingEntries), fOutputLocation);
		if (!status.isOK()) {
			if (fOutputLocation.equals(projPath)) {
				fNewOutputLocation= projPath.append(PreferenceConstants.getPreferenceStore().getString(PreferenceConstants.SRCBIN_BINNAME));
				IStatus status2= JavaConventions.validateClasspath(javaProject, CPListElement.convertToClasspathEntries(fExistingEntries), fNewOutputLocation);
				if (status2.isOK()) {
					if (isProjectAsSourceFolder) {
						result.setInfo(Messages.format(NewWizardMessages.NewSourceFolderWizardPage_warning_ReplaceSFandOL, fNewOutputLocation.makeRelative().toString())); 
					} else {
						result.setInfo(Messages.format(NewWizardMessages.NewSourceFolderWizardPage_warning_ReplaceOL, fNewOutputLocation.makeRelative().toString())); 
					}
					return result;