summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorStefan Laner <laner@itestra.de>2013-10-23 13:38:16 +0200
committerStefan Laner <laner@itestra.de>2013-10-23 13:38:16 +0200
commit3c8ee2be630e6b82277f5c2db3c9c842a25f8ef8 (patch)
treedb51ab2c802093bcd38b48dbc9bef75a6b028ce1 /src
parentde7bf39e54d5a378df67143af1608191e1b9aaa4 (diff)
downloadgenivi-common-api-dbus-runtime-3c8ee2be630e6b82277f5c2db3c9c842a25f8ef8.tar.gz
Fixed issue in (de-)serialization of arrays of maps.
Added convenience method to DBusTestUtils for printing a DBusMessage.
Diffstat (limited to 'src')
-rw-r--r--src/CommonAPI/DBus/DBusInputStream.cpp2
-rw-r--r--src/CommonAPI/DBus/DBusOutputStream.cpp2
-rw-r--r--src/test/DBusTestUtils.h7
3 files changed, 8 insertions, 3 deletions
diff --git a/src/CommonAPI/DBus/DBusInputStream.cpp b/src/CommonAPI/DBus/DBusInputStream.cpp
index c3d0121..c7627a1 100644
--- a/src/CommonAPI/DBus/DBusInputStream.cpp
+++ b/src/CommonAPI/DBus/DBusInputStream.cpp
@@ -271,7 +271,7 @@ void DBusInputStream::beginReadVectorOfVectors() {
void DBusInputStream::beginReadVectorOfMaps() {
beginReadGenericVector();
- alignToBoundary(8);
+ alignToBoundary(4);
savedStreamPositions_.push(currentDataPosition_);
}
diff --git a/src/CommonAPI/DBus/DBusOutputStream.cpp b/src/CommonAPI/DBus/DBusOutputStream.cpp
index 687d88d..46cf191 100644
--- a/src/CommonAPI/DBus/DBusOutputStream.cpp
+++ b/src/CommonAPI/DBus/DBusOutputStream.cpp
@@ -164,7 +164,7 @@ void DBusOutputStream::beginWriteVectorOfVectors(uint32_t sizeOfVector) {
}
void DBusOutputStream::beginWriteVectorOfMaps(uint32_t sizeOfVector) {
beginWriteGenericVector();
- alignToBoundary(8);
+ alignToBoundary(4);
rememberCurrentStreamPosition();
}
diff --git a/src/test/DBusTestUtils.h b/src/test/DBusTestUtils.h
index 4c1d3af..912d368 100644
--- a/src/test/DBusTestUtils.h
+++ b/src/test/DBusTestUtils.h
@@ -10,12 +10,12 @@
#include <dbus/dbus.h>
#include <CommonAPI/DBus/DBusServiceRegistry.h>
+#include <CommonAPI/DBus/DBusMessage.h>
inline char eliminateZeroes(char val) {
return !val ? '0' : val;
}
-
inline void printLibdbusMessageBody(char* data, uint32_t fromByteIndex, uint32_t toByteIndex) {
for(int i = fromByteIndex; i < toByteIndex; i++) {
std::cout << eliminateZeroes(data[i]);
@@ -35,6 +35,11 @@ inline void printLibdbusMessage(DBusMessage* libdbusMessage) {
printLibdbusMessage(libdbusMessage, 0, dbus_message_get_body_length(libdbusMessage));
}
+
+inline void printDBusMessage(CommonAPI::DBus::DBusMessage& dbusMessage) {
+ printLibdbusMessageBody(dbusMessage.getBodyData(), 0, dbusMessage.getBodyLength());
+}
+
inline std::string toString(CommonAPI::DBus::DBusServiceRegistry::DBusRecordState dbusRecordState) {
switch(dbusRecordState) {
case CommonAPI::DBus::DBusServiceRegistry::DBusRecordState::AVAILABLE: