diff options
author | Simon Hausmann <simon.hausmann@qt.io> | 2016-08-29 14:18:31 +0200 |
---|---|---|
committer | Simon Hausmann <simon.hausmann@qt.io> | 2016-08-30 13:48:22 +0000 |
commit | e3b277d5ccac5b9a5cdcbb292fb04d84d44c7869 (patch) | |
tree | fec7c8ec16399685ea5015edacb19f9552668f0d /src/qml/jsruntime/qv4arraybuffer_p.h | |
parent | 12d8004874c3f69ddd5aa7622da309c46930336b (diff) |
Fix conversion of QByteArray back to String in JavaScript
Commit 3b7e2a69f7eb8597c807de39b4de39721e9e2bd2 changed behavior so that
QByteArray is converted to the JS ArrayBuffer type, which is a better
fit than QVariant. However ArrayBuffer does not have a toString method
in the spec, and therefore any previous implicit toString conversion
such as when passing to JSON.parse() would fail. To restore
compatibility this patch adds a non-spec toString() that performs an
UTF-8 conversion, as it was done previously through QVariant's toString.
Task-number: QTBUG-55562
Change-Id: I096046954f7b29f7258deaa9ef5c8fa9292552ef
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'src/qml/jsruntime/qv4arraybuffer_p.h')
-rw-r--r-- | src/qml/jsruntime/qv4arraybuffer_p.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/qml/jsruntime/qv4arraybuffer_p.h b/src/qml/jsruntime/qv4arraybuffer_p.h index d079aeb9f7..b552cef9f1 100644 --- a/src/qml/jsruntime/qv4arraybuffer_p.h +++ b/src/qml/jsruntime/qv4arraybuffer_p.h @@ -106,6 +106,7 @@ struct ArrayBufferPrototype: Object static ReturnedValue method_get_byteLength(CallContext *ctx); static ReturnedValue method_slice(CallContext *ctx); + static ReturnedValue method_toString(CallContext *ctx); }; |