Skip to content
This repository was archived by the owner on Mar 30, 2019. It is now read-only.

Commit b9f7519

Browse files
author
AndrewSt
committed
Fix bug in #785 in DataStream
1 parent 0fe1315 commit b9f7519

1 file changed

Lines changed: 2 additions & 2 deletions

File tree

Source/SharpDX/DataStream.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -106,16 +106,16 @@ public static DataStream Create<T>(T[] userBuffer, bool canRead, bool canWrite,
106106
DataStream stream;
107107

108108
var sizeOfBuffer = Utilities.SizeOf(userBuffer);
109+
var indexOffset = index * Utilities.SizeOf<T>();
109110

110111
if (pinBuffer)
111112
{
112113
var handle = GCHandle.Alloc(userBuffer, GCHandleType.Pinned);
113-
var indexOffset = index * Utilities.SizeOf<T>();
114114
stream = new DataStream(indexOffset + (byte*)handle.AddrOfPinnedObject(), sizeOfBuffer - indexOffset, canRead, canWrite, handle);
115115
}
116116
else
117117
{
118-
stream = new DataStream(Interop.Fixed(userBuffer), sizeOfBuffer, canRead, canWrite, true);
118+
stream = new DataStream(indexOffset + (byte*)Interop.Fixed(userBuffer), sizeOfBuffer - indexOffset, canRead, canWrite, true);
119119
}
120120

121121
return stream;

0 commit comments

Comments
 (0)