Bug 171586

Summary: Qyoto delegates can be prematurely collected
Product: [Developer tools] bindings Reporter: Ilmar Kruis <ikruis>
Component: generalAssignee: kde-bindings
Status: RESOLVED FIXED    
Severity: normal CC: arno
Priority: NOR    
Version: unspecified   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Unspecified   
Latest Commit: Version Fixed In:

Description Ilmar Kruis 2008-09-24 13:27:47 UTC
Version:            (using Devel)
Installed from:    Compiled sources

The delegates that are installed in SmokeMarshallers.cs are immediatly open for garbage collection, which will result in an exception as soon as Smoke tries to call one of them. Currently the Mono GC does not collect them, but according to spec it's allowed to and the Microsoft GC already does so. For my Windows build of Qyoto I fixed this by creating static delegate fields for all callbacks, see patch on http://imaginary-project.net/wiki/building_qyoto_for_windows . Since the Mono people are working on a new GC, this might introduce the same problem on Mono.
Comment 1 Arno Rehn 2009-11-11 17:10:02 UTC
Fixed some weeks ago.