[Mono-bugs] [Bug 58881][Maj] Changed - [patch] marshalling of struct params to functions passed as unmanaged delegates broken

bugzilla-daemon@bugzilla.ximian.com bugzilla-daemon@bugzilla.ximian.com
Fri, 28 May 2004 05:22:49 -0400 (EDT)

Please do not reply to this email- if you want to comment on the bug, go to the
URL shown below and enter your comments there.

Changed by vladimir@pobox.com.


--- shadow/58881	2004-05-26 21:36:26.000000000 -0400
+++ shadow/58881.tmp.8776	2004-05-28 05:22:49.000000000 -0400
@@ -158,6 +158,15 @@
 to false.  This means that we can't blit within the managed side of
 things either.  The other fix is to introduce a new native_blittable
 flag within klass->marshal_info, and use that when deciding whether we
 can blit to/from unmanaged data types.  I think the latter is a better
+------- Additional Comments From vladimir@pobox.com  2004-05-28 05:22 -------
+New patch attached.  All previous tests pass; I added a new test to
+pinvoke2.cs which currently fails -- this is the case that's also
+failing now, byref non-blittable structs (so yes, this patch doesn't
+fix the underlying problem, but it hides it in a lot of cases!). 
+That's next on my to-do list...  setenv.exe also fails, but I believe
+that's because getenv() is prototyped to return a string, so the
+static data gets freed.