Beispiel #1
0
		/// <exception cref="NGit.Errors.MissingObjectException"></exception>
		/// <exception cref="System.IO.IOException"></exception>
		/// <exception cref="NGit.Diff.SimilarityIndex.TableFullException"></exception>
		internal virtual void Hash(ObjectLoader obj)
		{
			if (obj.IsLarge())
			{
				ObjectStream @in = obj.OpenStream();
				try
				{
					SetFileSize(@in.GetSize());
					Hash(@in, fileSize);
				}
				finally
				{
					@in.Close();
				}
			}
			else
			{
				byte[] raw = obj.GetCachedBytes();
				SetFileSize(raw.Length);
				Hash(raw, 0, raw.Length);
			}
		}