[mono/monodevelop] 9b78c8c4: Bug 16224 - Using "Review and Commit" command from Solution Pad version control sub-menu doubles commit entries.

"Therzok ([email protected])" <[email protected]> Thu, 14 Nov 2013 17:26:59 +0000
Newsgroups gmane.comp.gnome.mono.patches
Message-ID <0000014257a6cec4-d3291d60-19b2-4695-917e-c4b83116ac6f-000000@email.amazonses.com>
   Branch: refs/heads/bug16224
     Home: https://github.com/mono/monodevelop
  Compare: https://github.com/mono/monodevelop/commit/9b78c8c4822d

   Commit: 9b78c8c4822da551ca549d4444c3435db0dd2a1f
   Author: Therzok <[email protected]> (Therzok)
     Date: 2013-11-14 16:56:15 GMT
      URL: https://github.com/mono/monodevelop/commit/9b78c8c4822da551ca549d4444c3435db0dd2a1f

Bug 16224 - Using "Review and Commit" command from Solution Pad version control sub-menu doubles commit entries.

Changed paths:
  M main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/ChangeSet.cs

Modified: main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/ChangeSet.cs
===================================================================
@@ -61,7 +61,7 @@ public string GenerateGlobalComment (CommitMessageFormat format, MonoDevelop.Pro
 		public string GeneratePathComment (string path, IEnumerable<ChangeSetItem> items, 
 			CommitMessageFormat messageFormat, MonoDevelop.Projects.AuthorInformation userInfo)
 		{
-			ChangeLogWriter writer = new ChangeLogWriter (path, userInfo);
+			var writer = new ChangeLogWriter (path, userInfo);
 			writer.MessageFormat = messageFormat;
 			
 			foreach (ChangeSetItem item in items) {
@@ -85,8 +85,8 @@ public string GenerateGlobalComment (CommitMessageFormat format, MonoDevelop.Pro
 
 		public bool ContainsFile (FilePath fileName)
 		{
-			for (int n=0; n<items.Count; n++)
-				if (items [n].LocalPath == fileName)
+			foreach (var item in items)
+				if (item.LocalPath == fileName)
 					return true;
 			return false;
 		}
@@ -98,7 +98,11 @@ public ChangeSetItem AddFile (FilePath file)
 		
 		public ChangeSetItem AddFile (VersionInfo fileVersionInfo)
 		{
-			ChangeSetItem item = new ChangeSetItem (fileVersionInfo);
+			ChangeSetItem item = GetFileItem (fileVersionInfo.LocalPath);
+			if (item != null)
+				return item;
+
+			item = new ChangeSetItem (fileVersionInfo);
 			items.Add (item);
 			return item;
 		}
@@ -134,7 +138,7 @@ public void RemoveItem (ChangeSetItem item)
 		
 		public ChangeSet Clone ()
 		{
-			ChangeSet cs = (ChangeSet) MemberwiseClone ();
+			var cs = (ChangeSet) MemberwiseClone ();
 			cs.CopyFrom (this);
 			return cs;
 		}
@@ -184,7 +188,7 @@ internal ChangeSetItem (VersionInfo versionInfo)
 		
 		public ChangeSetItem Clone ()
 		{
-			ChangeSetItem cs = (ChangeSetItem) MemberwiseClone ();
+			var cs = (ChangeSetItem) MemberwiseClone ();
 			cs.CopyFrom (this);
 			return cs;
 		}


_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches