qtbase/src/plugins/platforms/wasm/qwasmstring.cpp
Tarja Sundqvist 5d8e9a8415 Revert "Update commercial SPDX-License-Identifier"
This reverts commit 4c16c8afb37f0b4cbcfb37d47baf6fc29e42c7b7.
The revert is needed for the opensource releases which cannot contain commercial license headers.

Change-Id: I0caa255093ecf406978de958cd3810bc9f80121e
Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
2025-06-02 14:52:25 +00:00

37 lines
829 B
C++

// Copyright (C) 2020 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
#include "qwasmstring.h"
QT_BEGIN_NAMESPACE
using namespace emscripten;
val QWasmString::fromQString(const QString &str)
{
static const val UTF16ToString(
val::module_property("UTF16ToString"));
auto ptr = quintptr(str.utf16());
return UTF16ToString(val(ptr));
}
QString QWasmString::toQString(const val &v)
{
QString result;
if (!v.isString())
return result;
static const val stringToUTF16(
val::module_property("stringToUTF16"));
static const val length("length");
int len = v[length].as<int>();
result.resize(len);
auto ptr = quintptr(result.utf16());
stringToUTF16(v, val(ptr), val((len + 1) * 2));
return result;
}
QT_END_NAMESPACE