--- C:/Users/Eamon/AppData/Local/Temp/Tag-revBASE.svn003.tmp.cs	Sat Feb 27 10:36:37 2010
+++ D:/EamonLargeDocs/docs-trunk/External/taglib-sharp/src/TagLib/Id3v2/Tag.cs	Sat Feb 27 10:37:08 2010
@@ -830,9 +830,10 @@
 				throw new ArgumentNullException ("data");
 
 			// If the entire tag is marked as unsynchronized,
-			// resynchronize it.
-			
-			if ((header.Flags & HeaderFlags.Unsynchronisation) != 0)
+			// resynchronize it.
+			
+			bool fullTagUnsynch = header.MajorVersion < 4 && ((header.Flags & HeaderFlags.Unsynchronisation) != 0);
+			if (fullTagUnsynch)
 				SynchData.ResynchByteVector (data);
 			
 			int frame_data_position = 0;
@@ -875,7 +876,7 @@
 					frame = FrameFactory.CreateFrame (data,
 						ref frame_data_position,
 						header.MajorVersion,
-                        (header.Flags & HeaderFlags.Unsynchronisation) != 0);
+						fullTagUnsynch);
 				} catch (NotImplementedException) {
 					continue;
 				}
