protected override bool ReleaseHandle() { SafeTemporaryKeychainHandle.UntrackItem(handle); Interop.CoreFoundation.CFRelease(handle); SetHandle(IntPtr.Zero); return(true); }
internal static void TrackKeychain(SafeTemporaryKeychainHandle toTrack) { if (toTrack.IsInvalid) { return; } lock (s_lookup) { Debug.Assert(!s_lookup.ContainsKey(toTrack.handle)); s_lookup[toTrack.handle] = toTrack; } }