https://bugzilla.novell.com/show_bug.cgi?id=677260
https://bugzilla.novell.com/show_bug.cgi?id=677260#c0 Summary: SIGSEGV while running System.Drawing code Classification: Mono Product: Mono: Class Libraries Version: 2.8.x Platform: Macintosh URL: http://www.ezblueprint.com OS/Version: Mac OS X 10.6 Status: NEW Severity: Normal Priority: P5 - None Component: Sys.Drawing. AssignedTo: [email protected] ReportedBy: [email protected] QAContact: [email protected] Found By: Community User Blocker: Yes Created an attachment (id=417729) --> (http://bugzilla.novell.com/attachment.cgi?id=417729) Our Drawing Application that calls GDI Plus and System.Drawing Description of Problem: Our application uses GDI+ to draw shapes on the screen. This application uses graphics path routines: CreatePath, DrawXXX, translate, etc. When running System.Drawing code that uses GDI+ graphics path routines, there are frequent SIGSEGV faults. Most often, these faults occur when one of the drawing routines are drawing off-of-screen coordinates (negative coordinates, or beyond the display device). Steps to reproduce the problem: 0. Get onto a Mac computer with Mono 2.8 already installed. 1. Unzip the example program directory to a location on your computer. 2. CD into the directory that you have created. 3. type "mono clientmac.exe" 4. Wait for the program to load. 5. Click on the "help" menu. 6. Choose open example drawing. 7. Open the drawing "masterbedroom.bp" 8. Wait for the drawing to display. 9. Scroll the scrollbars back and forth, up and down (scrolling the drawing into negative coordinates frequently). Actual Results: 1. Eventually, the program will throw an exception (after about the 5th time of scrolling the drawing off the screen). 2. The exception is: ================================================================= Got a SIGSEGV while executing native code. This usually indicates a fatal error in the mono runtime or one of the native libraries used by your application. ================================================================= 3. The most common stack traces are: at (wrapper managed-to-native) System.Drawing.GDIPlus.GdipDeletePath (intptr) <0x00003> at (wrapper managed-to-native) System.Drawing.GDIPlus.GdipDeletePath (intptr) <0x00003> at System.Drawing.Drawing2D.GraphicsPath.Dispose (bool) <0x0002c> at System.Drawing.Drawing2D.GraphicsPath.Finalize () <0x00013> at (wrapper runtime-invoke) object.runtime_invoke_virtual_void__this_ OR at (wrapper managed-to-native) System.Drawing.GDIPlus.GdipCreatePath (System.Drawing.Drawing2D.FillMode,intptr&) <0x00003> at (wrapper managed-to-native) System.Drawing.GDIPlus.GdipCreatePath (System.Drawing.Drawing2D.FillMode,intptr&) <0x00003> at System.Drawing.Drawing2D.GraphicsPath..ctor () <0x00032> at (wrapper remoting-invoke-with-check) System.Drawing.Drawing2D.GraphicsPath..ctor () <0x0002b> at Fileparserusingobjects.af (Fileparserusingobjects/ShapeNode) <0x000fd> at Fileparserusingobjects.l (Fileparserusingobjects/ShapeNode) <0x0018a> Expected Results: The program should be able to render the drawing, with any transformation applied to the graphics paths. The program should not throw a SIGSEGV fault. How often does this happen? Every time. It is usually reproducible after scrolling the drawing back and forth off the screen about 5 times. Additional Information: We do not have much Unix or Mac programming experience. Feel free to to use our program to test the mono routines that implement the graphics path apis found in GDI+. We love the implementation of Mono that you have created. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the QA contact for the bug. You are the assignee for the bug. _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
