#include "nsIXPConnect.h"
#include "DBusMarshaling.h"
+#include "DBusDataCarrier.h"
#include "bdb-debug.h"
return;
}
+ // test argument for DBusDataCarrier
+ nsCOMPtr<DBusDataCarrier> carrier = do_QueryInterface(aISupports);
+ if (carrier)
+ {
+ BDBLOG((" getSignatureFromISupports: DBusDataCarrier\n"));
+ carrier->GetType(aResult);
+ if (aResult.Equals("r")) {
+ nsIVariant *value;
+ carrier->GetValue(&value);
+ getSignatureFromVariant(cx, value, aResult);
+ NS_RELEASE(value);
+ } else if (aResult.Equals("v")) {
+ carrier->GetSignature(aResult);
+ }
+ return;
+ }
+
// test argument for nsIXPConnectWrappedJS
nsCOMPtr<nsIXPConnectWrappedJS> wrapped = do_QueryInterface(aISupports);
if (wrapped)