Index: trunk/eraser/Eraser.Util/StreamInfo.cs
===================================================================
--- trunk/eraser/Eraser.Util/StreamInfo.cs	(revision 2279)
+++ trunk/eraser/Eraser.Util/StreamInfo.cs	(revision 2281)
@@ -164,10 +164,18 @@
 			get
 			{
-				long fileSize;
-				using (SafeFileHandle handle = OpenHandle(
-					FileMode.Open, FileAccess.Read, FileShare.ReadWrite, FileOptions.None))
+				try
 				{
-					if (NativeMethods.GetFileSizeEx(handle, out fileSize))
-						return fileSize;
+					using (SafeFileHandle handle = OpenHandle(
+						FileMode.Open, FileAccess.Read, FileShare.ReadWrite, FileOptions.None))
+					{
+						long fileSize;
+						if (NativeMethods.GetFileSizeEx(handle, out fileSize))
+							return fileSize;
+					}
+				}
+				catch (UnauthorizedAccessException)
+				{
+					//Swallow: we just return 0 in this situation as there's nothing we can
+					//do about this error.
 				}
 
