Committed Gosia's patch to fix parts of bug 319661: Patch wizard excludes changes in projects that it can't connect
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMessages.java b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMessages.java
index 6bad5bd..0c1f04b 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMessages.java
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/CVSMessages.java
@@ -81,7 +81,6 @@
 	public static String CVSTeamProvider_overlappingFileDeletion;
 	public static String CVSTeamProvider_errorGettingWatchEdit;
 	public static String CVSTeamProvider_errorSettingWatchEdit;
-	public static String CVSTeamProvider_errorAddingFileToDiff;
 	public static String CVSTeamProvider_updatingFolder;
     public static String CVSCoreFileModificationValidator_editJob;
 
@@ -259,8 +258,6 @@
 	public static String CVSFileSystem_FetchTree;
 	public static String CVSURI_InvalidURI;
 	public static String ThePatchDoesNotContainChangesFor_0;
-	public static String ThePatchDoesNotContainAllTheChanges;
-	public static String ThePatchMayNotContainAllTheChanges;
 
 	static {
 		// load message values from bundle file
diff --git a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/messages.properties b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/messages.properties
index dfd685b..056cdab 100644
--- a/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/messages.properties
+++ b/bundles/org.eclipse.team.cvs.core/src/org/eclipse/team/internal/ccvs/core/messages.properties
@@ -76,7 +76,6 @@
 CVSTeamProvider_overlappingFileDeletion=Cannot create linked resource ''{0}'' because a deletion for the file of that name has not been committed.
 CVSTeamProvider_errorGettingWatchEdit=Could not get "watch/edit" property for project ''{0}''.
 CVSTeamProvider_errorSettingWatchEdit=Could not set "watch/edit" property for project ''{0}''.
-CVSTeamProvider_errorAddingFileToDiff=An I/O error occurred adding file ''{0}'' to the patch output.
 CVSTeamProvider_updatingFolder=Updating {0}
 
 CVSCoreFileModificationValidator_editJob = Performing CVS Edit
@@ -262,6 +261,4 @@
 LogEntry_0=/
 PrepareForReplaceVisitor_DeletedFileWithoutHistoryCannotBeRestoredWhileRevertToBase=Deleted file does not have history and cannot be restored with BASE tag.
 PrepareForReplaceVisitor_FileCannotBeReplacedWithBase=File {0} cannot be replaced with BASE.
-ThePatchDoesNotContainChangesFor_0= The patch does not contain changes for {0}
-ThePatchDoesNotContainAllTheChanges=The patch does not contain all the changes
-ThePatchMayNotContainAllTheChanges=The patch may not contain all the changes
\ No newline at end of file
+ThePatchDoesNotContainChangesFor_0= The patch does not contain changes for {0}
\ No newline at end of file
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIMessages.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIMessages.java
index 86e21e4..03b8dfb 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIMessages.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/CVSUIMessages.java
@@ -74,8 +74,12 @@
 	public static String CVSPreferencesPage_54;
 	public static String CVSPreferencesPage_55;
 	public static String CVSPreferencesPage_QuickDiffAnnotate;
+	public static String DiffOperation_ThePatchDoesNotContainAllTheChanges;
+	public static String DiffOperation_ThePatchMayNotContainAllTheChanges;
 	public static String DiffOperation_CreatePatchConflictMessage;
 	public static String DiffOperation_CreatePatchConflictTitle;
+	public static String DiffOperation_ErrorsOccurredWhileCreatingThePatch;
+	public static String DiffOperation_ErrorAddingFileToDiff;
 	public static String GenerateDiffFileWizard_11;
 	public static String GenerateDiffFileWizard_12;
 	public static String PasswordManagementPreferencePage_2;
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/messages.properties b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/messages.properties
index 31d6a8c..226d25d 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/messages.properties
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/messages.properties
@@ -1205,7 +1205,11 @@
 AnnotatePreferencePage_AnnotatePrefPageMessage=Options for CVS Annotate:
 AnnotatePreferencePage_AnnotatePrefPageBinaryFileMessage=Attempt to annotate a &binary file
 DiffOperation_CreatePatchConflictTitle=Patch Already Being Created
+DiffOperation_ThePatchDoesNotContainAllTheChanges=The patch does not contain all the changes
+DiffOperation_ThePatchMayNotContainAllTheChanges=The patch may not contain all the changes
 DiffOperation_CreatePatchConflictMessage=A patch is already in the process of being written to {0}. Do you want to cancel the previous patch creation and continue with this one?
+DiffOperation_ErrorsOccurredWhileCreatingThePatch = Errors occurred while creating the patch
+DiffOperation_ErrorAddingFileToDiff = An I/O error occurred adding file ''{0}'' to the patch output.
 ClipboardDiffOperation_Clipboard=the clipboard
 RemoveRootAction_RepositoryRemovalDialogMessageSingle=Are you sure you want to discard ''{0}''?
 RemoveRootAction_RepositoryRemovalDialogMessageMultiple=Are you sure you want to discard these {0} repositories?
diff --git a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/operations/DiffOperation.java b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/operations/DiffOperation.java
index 7a2c2b9..ac78d9b 100644
--- a/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/operations/DiffOperation.java
+++ b/bundles/org.eclipse.team.cvs.ui/src/org/eclipse/team/internal/ccvs/ui/operations/DiffOperation.java
@@ -324,12 +324,12 @@
 			}
 		}
 		if (toShow.size() > 0) {
-			String msg = may ? CVSMessages.ThePatchMayNotContainAllTheChanges
-					: CVSMessages.ThePatchDoesNotContainAllTheChanges;
+			String msg = may ? CVSUIMessages.DiffOperation_ThePatchMayNotContainAllTheChanges
+					: CVSUIMessages.DiffOperation_ThePatchDoesNotContainAllTheChanges;
 			status = new MultiStatus(CVSProviderPlugin.ID,
 					CVSStatus.SERVER_ERROR,
-					(IStatus[]) toShow.toArray(new IStatus[0]), msg, null);
-			CVSUIPlugin.openError(getShell(), null, null, status,
+					(IStatus[]) toShow.toArray(new IStatus[0]), CVSUIMessages.DiffOperation_ErrorsOccurredWhileCreatingThePatch, null);
+			CVSUIPlugin.openError(getShell(), this.getTaskName(), msg, status,
 					CVSUIPlugin.PERFORM_SYNC_EXEC
 							| CVSUIPlugin.LOG_OTHER_EXCEPTIONS);
 		}
@@ -402,7 +402,7 @@
 				lines++;
 			}
 		} catch (IOException e) {
-			throw CVSException.wrapException(file.getIResource(), NLS.bind(CVSMessages.CVSTeamProvider_errorAddingFileToDiff, new String[] { pathString }), e); 
+			throw CVSException.wrapException(file.getIResource(), NLS.bind(CVSUIMessages.DiffOperation_ErrorAddingFileToDiff, new String[] { pathString }), e);
 		} finally {
 			try {
 				fileReader.close();
@@ -466,7 +466,7 @@
 			printStream.print(linePrefix);
 			readLastLine(fileReader, printStream);
 		} catch (IOException e) {
-			throw CVSException.wrapException(file.getIResource(), NLS.bind(CVSMessages.CVSTeamProvider_errorAddingFileToDiff, new String[] { pathString }), e); 
+			throw CVSException.wrapException(file.getIResource(), NLS.bind(CVSUIMessages.DiffOperation_ErrorAddingFileToDiff, new String[] { pathString }), e);
 		} finally  {
 			try {
 				fileReader.close();