- IntPtr domainPtr = Utility.StringToPtr (domain);
- handle = avahi_domain_browser_new (client.Handle, iface, (int) proto, domainPtr, (int) btype,
- cb, IntPtr.Zero);
- Utility.Free (domainPtr);
+ lock (client) {
+ handle = avahi_domain_browser_new (client.Handle, iface, (int) proto,
+ Utility.StringToBytes (domain), (int) btype, flags,
+ cb, IntPtr.Zero);
+
+ if (handle == IntPtr.Zero)
+ client.ThrowError ();
+ }