Getting handle information with MiniDump causes ArgumentException
<p>I am trying to get minidump information about handles of some process. 
I am getting a List of handles of type <code>MINIDUMP_HANDLE_DESCRIPTOR_2</code> and I am trying to read the info about the handle which I can access with <code>ObjectInfoRva</code>.</p>

<p>However, I always get this exception:</p>

<blockquote>
  <p>System.ArgumentException occurred   HResult=-2147024809   Message=Not
  enough space available in the buffer.   Source=mscorlib</p>
</blockquote>

<p>That's my method</p>

<pre><code>public unsafe DbgHelp.MINIDUMP_HANDLE_OBJECT_INFORMATION ReadInfo(uint rva)
{
    try
    {
        DbgHelp.MINIDUMP_HANDLE_OBJECT_INFORMATION result = default(DbgHelp.MINIDUMP_HANDLE_OBJECT_INFORMATION);
        byte* baseOfView = null;
        _safeMemoryMappedViewHandle.AcquirePointer(ref baseOfView);

        IntPtr position = new IntPtr(baseOfView + rva);

        result = _safeMemoryMappedViewHandle.Read&lt;DbgHelp.MINIDUMP_HANDLE_OBJECT_INFORMATION&gt;((ulong)position);
        return result;
    }
    finally
    {
        _safeMemoryMappedViewHandle.ReleasePointer();
    }
}
</code></pre>

<p><code>MINIDUMP_HANDLE_DESCRIPTOR_2</code> declaration:</p>

<pre><code> public struct MINIDUMP_HANDLE_DESCRIPTOR_2
{
    public UInt64 Handle;
    public uint TypeNameRva;
    public uint ObjectNameRva;
    public UInt32 Attributes;
    public UInt32 GrantedAccess;
    public UInt32 HandleCount;
    public UInt32 PointerCount;
    public uint ObjectInfoRva;
    public UInt32 Reserved0;
}
</code></pre>

<p>The <code>_safeMemoryMappedViewHandle</code> is initialized - that's how I've got the handles list in the first place.</p>

<p>What am I doing wrong?</p>