diff options
| author | Javier <dev.git@javispedro.com> | 2014-12-06 21:14:24 +0100 |
|---|---|---|
| committer | Javier <dev.git@javispedro.com> | 2014-12-06 21:14:24 +0100 |
| commit | 3785de21ec2e466535a45183b6f9082b5dfba976 (patch) | |
| tree | deb5087ad98aca7491f1ac37560bd8c7aa96c8c4 /daemon/packer.cpp | |
| parent | 0a92face6b035a26aad3d4d7ffa5a72b463e4c2a (diff) | |
add a polyfill for typed arrays, and many other compat changes
Diffstat (limited to 'daemon/packer.cpp')
| -rw-r--r-- | daemon/packer.cpp | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/daemon/packer.cpp b/daemon/packer.cpp index 569f7a8..4dabf96 100644 --- a/daemon/packer.cpp +++ b/daemon/packer.cpp @@ -74,6 +74,22 @@ void Packer::writeDict(const QMap<int, QVariant> &d) break; } + case QMetaType::QVariantList: { + // Generally a JS array, which we marshal as a byte array. + QVariantList list = it.value().toList(); + QByteArray ba; + ba.reserve(list.size()); + + Q_FOREACH (const QVariant &v, list) { + ba.append(v.toInt()); + } + + writeLE<quint8>(WatchConnector::typeBYTES); + writeLE<quint16>(ba.size()); + _buf->append(ba); + break; + } + default: logger()->warn() << "Unknown dict item type:" << it.value().typeName(); /* Fallthrough */ |
