summaryrefslogtreecommitdiffstats
path: root/mono
diff options
context:
space:
mode:
Diffstat (limited to 'mono')
-rw-r--r--mono/Connection.cs15
-rw-r--r--mono/Handler.cs2
-rw-r--r--mono/Service.cs2
3 files changed, 10 insertions, 9 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
diff --git a/mono/Handler.cs b/mono/Handler.cs
index be03dc5e..000a7886 100644
--- a/mono/Handler.cs
+++ b/mono/Handler.cs
@@ -72,7 +72,7 @@ namespace DBus
pathName = pathName.TrimStart('/');
this.path = pathName.Split('/');
this.pathName = "/" + pathName;
-
+
// Create the vTable and register the path
vTable = new DBusObjectPathVTable(new DBusObjectPathUnregisterFunction(Unregister_Called),
new DBusObjectPathMessageFunction(Message_Called));
diff --git a/mono/Service.cs b/mono/Service.cs
index c34ba3dc..5dea3113 100644
--- a/mono/Service.cs
+++ b/mono/Service.cs
@@ -167,7 +167,7 @@ namespace DBus
{
get {
if (this.module == null) {
- this.module = ProxyAssembly.DefineDynamicModule(Name, "proxy.dll", true);
+ this.module = ProxyAssembly.DefineDynamicModule(Name, Name + ".proxy.dll", true);
}
return this.module;