From: Stephan Sundermann Date: Thu, 10 Oct 2013 20:52:33 +0000 (+0200) Subject: Gst.Object: Fixed property existance check X-Git-Tag: 1.19.3~483^2~289 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6b886b90ac5da230e9bc28d6d20f6023cd7f8208;p=platform%2Fupstream%2Fgstreamer.git Gst.Object: Fixed property existance check g_object_class_find_property's return value does not need to be freed and needs a GObjectClass* --- diff --git a/sources/custom/Object.cs b/sources/custom/Object.cs index 1339002b..a9ddaa6 100644 --- a/sources/custom/Object.cs +++ b/sources/custom/Object.cs @@ -28,14 +28,12 @@ namespace Gst { [DllImport ("libgobject-2.0-0.dll", CallingConvention = CallingConvention.Cdecl)] static extern IntPtr g_object_class_find_property (IntPtr klass, IntPtr name); - bool PropertyExists (string name) { if (PropertyNameCache.ContainsKey (name)) return PropertyNameCache [name]; - var ptr = g_object_class_find_property (GType.GetClassPtr (), GLib.Marshaller.StringToPtrGStrdup (name)); + var ptr = g_object_class_find_property (Marshal.ReadIntPtr (Handle), GLib.Marshaller.StringToPtrGStrdup (name)); var result = ptr != IntPtr.Zero; - GLib.Marshaller.Free (ptr); // just cache the positive results because there might // actually be new properties getting installed