http://bugzilla.novell.com/show_bug.cgi?id=612206

http://bugzilla.novell.com/show_bug.cgi?id=612206#c0


           Summary: Variable value corruption when assigning from
                    exception-throwing overriding method/property
    Classification: Mono
           Product: Mono: Runtime
           Version: 2.6.x
          Platform: x86
        OS/Version: Mac OS X 10.6
            Status: NEW
          Severity: Critical
          Priority: P5 - None
         Component: JIT
        AssignedTo: [email protected]
        ReportedBy: [email protected]
         QAContact: [email protected]
          Found By: ---
           Blocker: ---


Created an attachment (id=367525)
 --> (http://bugzilla.novell.com/attachment.cgi?id=367525)
Test program

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US)
AppleWebKit/533.4 (KHTML, like Gecko) Chrome/5.0.375.55 Safari/533.4

Trying to assign to a long variable from an exception-throwing method/property
corrupts the value of the variable.

Example : 
..
long a = 100;
try {
  a = someInstance.OverrideProperty; //Exception thrown by getter
}
catch {}
Console.WriteLine(a); //prints garbage
..

In addition, the exception-throwing method/property must be an override, either
of an abstract/virtual method/property.

See attached sample code.



Reproducible: Always

Steps to Reproduce:
Run the attached program on mono 2.4.2.3 or 2.6.4 on mac os x (10.5/10.6)

Actual Results:  
Attached program outputs "OhNo! value = 54692285358689880"

Expected Results:  
Attached program outputs "ALL OK!"

-- 
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  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-bugs

Reply via email to