To build this Gtk# from trunk is required and the following patches:
http://bugzilla.novell.com/show_bug.cgi?id=323372
-http://bugzilla.novell.com/show_bug.cgi?id=501685
http://bugzilla.novell.com/show_bug.cgi?id=497667
http://bugzilla.novell.com/show_bug.cgi?id=503048
http://bugzilla.novell.com/show_bug.cgi?id=503060
GCHandle gch = (GCHandle) data;
ColorBalanceAdapter adapter = gch.Target as ColorBalanceAdapter;
- PropertyInfo pi = adapter.Type.GetProperty ("BalanceType", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.FlattenHierarchy);
- if (pi != null && pi.PropertyType == typeof (Gst.Interfaces.ColorBalanceType))
- native_iface.BalanceType = (Gst.Interfaces.ColorBalanceType) pi.GetValue (null, null);
+ ColorBalanceImplementor implementor = adapter.Implementor;
+ if (implementor != null) {
+ PropertyInfo pi = implementor.GetType().GetProperty ("BalanceType", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.FlattenHierarchy);
+ if (pi != null && pi.PropertyType == typeof (Gst.Interfaces.ColorBalanceType))
+ native_iface.BalanceType = (Gst.Interfaces.ColorBalanceType) pi.GetValue (null, null);
+ }
Marshal.StructureToPtr (native_iface, ifaceptr, false);
gch.Free ();
GCHandle gch = (GCHandle) data;
MixerAdapter adapter = gch.Target as MixerAdapter;
- PropertyInfo pi = adapter.Type.GetProperty ("MixerType", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.FlattenHierarchy);
- if (pi != null && pi.PropertyType == typeof (Gst.Interfaces.MixerType))
- native_iface.MixerType = (Gst.Interfaces.MixerType) pi.GetValue (null, null);
+ MixerImplementor implementor = adapter.Implementor;
+
+ if (implementor != null) {
+ PropertyInfo pi = implementor.GetType().GetProperty ("MixerType", BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Static | BindingFlags.FlattenHierarchy);
+ if (pi != null && pi.PropertyType == typeof (Gst.Interfaces.MixerType))
+ native_iface.MixerType = (Gst.Interfaces.MixerType) pi.GetValue (null, null);
+ }
Marshal.StructureToPtr (native_iface, ifaceptr, false);
gch.Free ();