Skip to content

Commit 6bcc6b4

Browse files
committed
Merge branch 'next' into FixForHasDefaultMember
2 parents c2a24e0 + b3a08d5 commit 6bcc6b4

File tree

1 file changed

+5
-1
lines changed

1 file changed

+5
-1
lines changed

Rubberduck.VBEEditor/ComManagement/TypeLibs/TypeLibsSupport.cs

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -561,7 +561,11 @@ public static T ReadComObjectStructure<T>(object comObj)
561561
throw new ArgumentException("Expected a COM object");
562562
}
563563

564-
var referencesPtr = Marshal.GetIUnknownForObject(comObj);
564+
var referencesPtr = Marshal.GetIUnknownForObjectInContext(comObj);
565+
if (referencesPtr == IntPtr.Zero)
566+
{
567+
throw new InvalidOperationException("Cannot access the TypeLib API from this thread. TypeLib API must be accessed from the main thread.");
568+
}
565569
var retVal = StructHelper.ReadStructureSafe<T>(referencesPtr);
566570
Marshal.Release(referencesPtr);
567571
return retVal;

0 commit comments

Comments
 (0)