mirror of
https://gitlab.freedesktop.org/dbus/dbus.git
synced 2026-05-14 13:18:08 +02:00
2005-01-11 Joe Shaw <joeshaw@novell.com>
Patch from Tambet Ingo <tambet@ximian.com> * mono/DBusType/Array.cs (Get): Get the underlying element type by calling type.GetElementType(). The code previously depended on broken Mono behavior, which was fixed in Mono 1.1.3. * mono/DBusType/Dict.cs (constructor): Fix the parameters for Activator.CreateInstance() so that the class's constructor is called with the right parameters.
This commit is contained in:
parent
ac4d2cb464
commit
b3ba709079
3 changed files with 17 additions and 1 deletions
12
ChangeLog
12
ChangeLog
|
|
@ -1,3 +1,15 @@
|
|||
2005-01-11 Joe Shaw <joeshaw@novell.com>
|
||||
|
||||
Patch from Tambet Ingo <tambet@ximian.com>
|
||||
|
||||
* mono/DBusType/Array.cs (Get): Get the underlying element type by
|
||||
calling type.GetElementType(). The code previously depended on
|
||||
broken Mono behavior, which was fixed in Mono 1.1.3.
|
||||
|
||||
* mono/DBusType/Dict.cs (constructor): Fix the parameters for
|
||||
Activator.CreateInstance() so that the class's constructor is
|
||||
called with the right parameters.
|
||||
|
||||
2005-01-11 Joe Shaw <joeshaw@novell.com>
|
||||
|
||||
Patch from Timo Teräs <ext-timo.teras@nokia.com>
|
||||
|
|
|
|||
|
|
@ -106,6 +106,9 @@ namespace DBus.DBusType
|
|||
|
||||
public object Get(System.Type type)
|
||||
{
|
||||
if (type.IsArray)
|
||||
type = type.GetElementType ();
|
||||
|
||||
if (Arguments.Suits(elementType, type.UnderlyingSystemType)) {
|
||||
this.val = System.Array.CreateInstance(type.UnderlyingSystemType, elements.Count);
|
||||
int i = 0;
|
||||
|
|
|
|||
|
|
@ -41,8 +41,9 @@ namespace DBus.DBusType
|
|||
|
||||
// Get the argument type and get the value
|
||||
Type elementType = (Type) DBus.Arguments.DBusTypes[(char) dbus_message_iter_get_arg_type(dictIter)];
|
||||
object [] pars = new Object[1];
|
||||
object [] pars = new Object[2];
|
||||
pars[0] = dictIter;
|
||||
pars[1] = service;
|
||||
DBusType.IDBusType dbusType = (DBusType.IDBusType) Activator.CreateInstance(elementType, pars);
|
||||
this.val.Add(key, dbusType);
|
||||
} while (dbus_message_iter_next(dictIter));
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue