summaryrefslogtreecommitdiffstats
path: root/mono/Connection.cs
diff options
context:
space:
mode:
Diffstat (limited to 'mono/Connection.cs')
-rw-r--r--mono/Connection.cs15
1 files changed, 8 insertions, 7 deletions
diff --git a/mono/Connection.cs b/mono/Connection.cs
index 5e25ffd6..fad0dc56 100644
--- a/mono/Connection.cs
+++ b/mono/Connection.cs
@@ -64,15 +64,16 @@ namespace DBus
internal static Connection Wrap(IntPtr rawConnection)
{
if (slot > -1) {
- // If we already have a Connection object associated with this rawConnection then return it
+ // Maybe we already have a Connection object associated with
+ // this rawConnection then return it
IntPtr rawThis = dbus_connection_get_data (rawConnection, slot);
- return (DBus.Connection) ((GCHandle)rawThis).Target;
- }
- else
- {
- // If it doesn't exist then create a new connection around it
- return new Connection(rawConnection);
+ if (rawThis != IntPtr.Zero) {
+ return (DBus.Connection) ((GCHandle)rawThis).Target;
}
+ }
+
+ // If it doesn't exist then create a new connection around it
+ return new Connection(rawConnection);
}
public int Timeout