protected override void CheckToString(NSObject obj) { switch (obj.GetType ().FullName) { // native crash calling MonoMac.Foundation.NSObject.get_Description () case "WebKit.WKNavigationAction": case "WebKit.WKFrameInfo": // EXC_BAD_ACCESS (code=1, address=0x0) case "MonoMac.Foundation.NSUrlConnection": case "Foundation.NSUrlConnection": case "MonoMac.AppKit.NSLayoutConstraint": // Unable to create description in descriptionForLayoutAttribute_layoutItem_coefficient. Something is nil case "AppKit.NSLayoutConstraint": case "MonoMac.AVFoundation.AVPlayerItemTrack": case "AVFoundation.AVPlayerItemTrack": // 10.8 case "MonoMac.AVFoundation.AVComposition": case "AVFoundation.AVComposition": case "MonoMac.GameKit.GKPlayer": // Crashing on 10.8.3 from the Apple beta channel for abock (on 2013-01-30) case "GameKit.GKPlayer": case "MonoMac.AVFoundation.AVAssetResourceLoadingRequest": // Crashing on 10.9.1 for abock (2014-01-13) case "AVFoundation.AVAssetResourceLoadingRequest": case "MonoMac.AVFoundation.AVAssetResourceLoadingDataRequest": // Crashes on 10.9.3 for chamons (constructor found in AVCompat) case "AVFoundation.AVAssetResourceLoadingDataRequest": case "MonoMac.AVFoundation.AVCaptureDeviceInputSource": // Crashes on 10.9.5 case "AVFoundation.AVCaptureDeviceInputSource": break; default: base.CheckToString (obj); break; } }
protected override void CheckNSObjectProtocol(NSObject obj) { switch (obj.GetType ().Name) { case "NSString": // according to bots `isKindOf (null)` returns true before Yosemite break; case "SBObject": // *** NSForwarding: warning: object 0x77a49a0 of class '__NSMessageBuilder' does not implement doesNotRecognizeSelector: -- abort break; default: base.CheckNSObjectProtocol (obj); break; } }
/// <summary> /// Checks that the IsDirectBinding property is identical to the IsWrapper property of the Register attribute. /// </summary> /// <param name="obj">Object.</param> protected virtual void CheckIsDirectBinding(NSObject obj) { var attrib = obj.GetType ().GetCustomAttribute<RegisterAttribute> (false); // only check types that we register - that way we avoid the 118 MonoTouch.CoreImagge.CI* "special" types if (attrib == null) return; var is_wrapper = attrib != null && attrib.IsWrapper; var is_direct_binding = GetIsDirectBinding (obj); if (is_direct_binding != is_wrapper) ReportError ("{0} : IsDirectBinding (expected {1}, got {2})", instance_type_name, is_wrapper, is_direct_binding); }
public override void SaveDocument (NSObject delegateObject, MonoMac.ObjCRuntime.Selector didSaveSelector, IntPtr contextInfo) { Logger.Debug ("Not sure what this is doing yet SaveDocument {0}", delegateObject.GetType ()); SaveData (); }