[Mono-bugs] [Bug 617228] SDB: Using MethodCall.Invoke() to invoke a method containing null reference

2010-07-05 Thread bugzilla_noreply
http://bugzilla.novell.com/show_bug.cgi?id=617228

http://bugzilla.novell.com/show_bug.cgi?id=617228#c10


Martin Baulig mar...@novell.com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED

--- Comment #10 from Martin Baulig mar...@novell.com 2010-07-05 14:06:38 UTC 
---
Applied to mono/trunk in 159901.

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the QA contact for the bug.
___
mono-bugs maillist  -  mono-bugs@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs


[Mono-bugs] [Bug 617228] SDB: Using MethodCall.Invoke() to invoke a method containing null reference

2010-07-01 Thread bugzilla_noreply
http://bugzilla.novell.com/show_bug.cgi?id=617228

http://bugzilla.novell.com/show_bug.cgi?id=617228#c6


--- Comment #6 from Martin Baulig mar...@novell.com 2010-07-01 12:45:20 UTC 
---
Update:
I have a patch for Windows (tested with the testcase from comment #2) and
Linux/x64 (compiles, still untested).

I'll clean it up a bit, write ChangeLogs, test with BlogEngine.NET on both
Windows and Linux and then attach the patch.  Should be ready in about 1-2
hours.

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the QA contact for the bug.
___
mono-bugs maillist  -  mono-bugs@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs


[Mono-bugs] [Bug 617228] SDB: Using MethodCall.Invoke() to invoke a method containing null reference

2010-07-01 Thread bugzilla_noreply
http://bugzilla.novell.com/show_bug.cgi?id=617228

http://bugzilla.novell.com/show_bug.cgi?id=617228#c7


--- Comment #7 from Martin Baulig mar...@novell.com 2010-07-01 15:12:30 UTC 
---
Created an attachment (id=373269)
 -- (http://bugzilla.novell.com/attachment.cgi?id=373269)
Patch.

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the QA contact for the bug.
___
mono-bugs maillist  -  mono-bugs@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs


[Mono-bugs] [Bug 617228] SDB: Using MethodCall.Invoke() to invoke a method containing null reference

2010-07-01 Thread bugzilla_noreply
http://bugzilla.novell.com/show_bug.cgi?id=617228

http://bugzilla.novell.com/show_bug.cgi?id=617228#c8


--- Comment #8 from Zoltan Varga var...@gmail.com 2010-07-01 15:33:07 UTC ---
Looks ok, just put the windows specific stuff into a #ifdef TARGET_WIN32 in
mono_arch_handle_exception (), since !defined(MONO_ARCH_HAVE_SIGACTION) does
not imply windows, it could be BSD/solaris etc.

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the QA contact for the bug.
___
mono-bugs maillist  -  mono-bugs@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs


[Mono-bugs] [Bug 617228] SDB: Using MethodCall.Invoke() to invoke a method containing null reference

2010-07-01 Thread bugzilla_noreply
http://bugzilla.novell.com/show_bug.cgi?id=617228

http://bugzilla.novell.com/show_bug.cgi?id=617228#c9


--- Comment #9 from Martin Baulig mar...@novell.com 2010-07-01 16:09:48 UTC 
---
Fixed in SVN: r159782 in mono-2-6-branch/mono.

The Windows part of this still needs to be applied to trunk; leaving this bug
open till I've done that.

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the QA contact for the bug.
___
mono-bugs maillist  -  mono-bugs@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs


[Mono-bugs] [Bug 617228] SDB: Using MethodCall.Invoke() to invoke a method containing null reference

2010-06-30 Thread bugzilla_noreply
http://bugzilla.novell.com/show_bug.cgi?id=617228

http://bugzilla.novell.com/show_bug.cgi?id=617228#c


Martin Baulig mar...@novell.com changed:

   What|Removed |Added

Summary|Mono crashes while  |SDB: Using
   |inspecting local variables  |MethodCall.Invoke() to
   |during local debugging of   |invoke a method containing
   |class constructor   |null reference

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the QA contact for the bug.
___
mono-bugs maillist  -  mono-bugs@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs


[Mono-bugs] [Bug 617228] SDB: Using MethodCall.Invoke() to invoke a method containing null reference

2010-06-30 Thread bugzilla_noreply
http://bugzilla.novell.com/show_bug.cgi?id=617228

http://bugzilla.novell.com/show_bug.cgi?id=617228#c2


Martin Baulig mar...@novell.com changed:

   What|Removed |Added

 Attachment #371619|0   |1
is obsolete||

--- Comment #2 from Martin Baulig mar...@novell.com 2010-06-30 17:52:09 UTC 
---
Created an attachment (id=372982)
 -- (http://bugzilla.novell.com/attachment.cgi?id=372982)
Simple test case

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the QA contact for the bug.
___
mono-bugs maillist  -  mono-bugs@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs


[Mono-bugs] [Bug 617228] SDB: Using MethodCall.Invoke() to invoke a method containing null reference

2010-06-30 Thread bugzilla_noreply
http://bugzilla.novell.com/show_bug.cgi?id=617228

http://bugzilla.novell.com/show_bug.cgi?id=617228#c3


Martin Baulig mar...@novell.com changed:

   What|Removed |Added

   Severity|Major   |Critical

--- Comment #3 from Martin Baulig mar...@novell.com 2010-06-30 17:54:03 UTC 
---
This is a much simpler test case:

1. Insert a breakpoint on the Console.WriteLine().
2. Debug using a local profile
3. When stopped, expand the variable x in the locals pad

This makes mono crash.

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the QA contact for the bug.
___
mono-bugs maillist  -  mono-bugs@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs


[Mono-bugs] [Bug 617228] SDB: Using MethodCall.Invoke() to invoke a method containing null reference

2010-06-30 Thread bugzilla_noreply
http://bugzilla.novell.com/show_bug.cgi?id=617228

http://bugzilla.novell.com/show_bug.cgi?id=617228#c4


--- Comment #4 from Martin Baulig mar...@novell.com 2010-06-30 18:04:44 UTC 
---
Here's what's happening (I'm using a slightly old SVN build on Windows for this
stacktrace, but the problem still exists with the latest 2.6.6 for Windows):

MonoVS uses MethodCall.Invoke() to invoke X.get_HasChildren, which contains a
segfault (_children is null).

While the runtime tries to handle the exception, it calls
mono_get_exception_null_reference() which mono_runtime_invoke()'s
System.NullReferenceException.ctor and at that point, we hit the
single-stepping breakpoint, but Windows doesn't seem to recognize it.

The top frame of the stack is:

02AD0935  cmp eax,dword ptr ds:[3Ah] 

and the effective address is the single-stepping page.

==
 02ad0935()
   mono.dll!mono_jit_runtime_invoke(_MonoMethod * method=0x026cbaf8, void 
 * obj=0x01f65f18, void * * params=0x, MonoObject * * exc=0x)  
 Line 4779 + 0x18 bytes C
 mono.dll!mono_runtime_invoke(_MonoMethod * method=0x026cbaf8, void *
obj=0x01f65f18, void * * params=0x, MonoObject * * exc=0x) 
Line 2613 + 0x18 bytesC
 mono.dll!mono_runtime_object_init(MonoObject * this=0x01f65f18)  Line 99 +
0x11 bytesC
 mono.dll!mono_exception_from_name_domain(_MonoDomain * domain=0x00316ea0,
_MonoImage * image=0x02679d08, const char * name_space=0x10563bf0, const char *
name=0x10563bd8)  Line 64 + 0x9 bytesC
 mono.dll!mono_exception_from_name(_MonoImage * image=0x02679d08, const
char * name_space=0x10563bf0, const char * name=0x10563bd8)  Line 34 + 0x17
bytesC
 mono.dll!mono_get_exception_null_reference()  Line 280 + 0x15 bytesC
 mono.dll!mono_handle_exception_internal(MonoContext * ctx=0x0018ef98, void
* obj=0x, void * original_ip=0x02ad06c3, int test_only=0x, int
* out_filter_idx=0x, _MonoJitInfo * * out_ji=0x)  Line 1135 +
0x5 bytesC
 mono.dll!mono_handle_exception(MonoContext * ctx=0x0018ef98, void *
obj=0x, void * original_ip=0x02ad06c3, int test_only=0x)  Line
1504 + 0x19 bytesC
 mono.dll!mono_arch_handle_exception(void * sigctx=0x026f5c08, void *
obj=0x, int test_only=0x)  Line 1068 + 0x15 bytesC
 mono.dll!mono_sigsegv_signal_handler(int _dummy=0x,
_EXCEPTION_RECORD * info=0x0018f1c8, void * context=0x026f5c08)  Line 4896 +
0xd bytesC
 mono.dll!seh_handler(_EXCEPTION_POINTERS * ep=0x0018f0c8)  Line 192 + 0x1b
bytesC
 kernel32.dll!CheckForReadOnlyResource()  + 0x3bf bytes
 [Frames below may be incorrect and/or missing, no symbols loaded for
kernel32.dll]
 ntdll.dll!RtlKnownExceptionFilter()  + 0xb7 bytes
 ntdll.dll!RtlInitializeExceptionChain()  + 0x36 bytes
===

The mono process crashes here.

Maybe Windows doesn't like the recursive segfault inside seh_handler() ?

I also don't understand why System.NullReferenceException.ctor contains the
single-stepping code, I don't think we should be single-stepping when called
from inside the mono_sigsegv_signal_handler().

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the QA contact for the bug.
___
mono-bugs maillist  -  mono-bugs@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs


[Mono-bugs] [Bug 617228] SDB: Using MethodCall.Invoke() to invoke a method containing null reference

2010-06-30 Thread bugzilla_noreply
http://bugzilla.novell.com/show_bug.cgi?id=617228

http://bugzilla.novell.com/show_bug.cgi?id=617228#c5


Martin Baulig mar...@novell.com changed:

   What|Removed |Added

 CC||var...@gmail.com

--- Comment #5 from Martin Baulig mar...@novell.com 2010-06-30 18:06:26 UTC 
---
Hi Zoltan !

Could you please have a look at this ?  It's a really annoying bug which makes
us crash every time we're trying to evaluate some method that contains a
segfault.

Thanks,
Martin

-- 
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
--- You are receiving this mail because: ---
You are the QA contact for the bug.
___
mono-bugs maillist  -  mono-bugs@lists.ximian.com
http://lists.ximian.com/mailman/listinfo/mono-bugs