summaryrefslogtreecommitdiffstats
path: root/src/Authoring
diff options
context:
space:
mode:
Diffstat (limited to 'src/Authoring')
-rw-r--r--src/Authoring/QT3DSDM/QT3DSDM.pro1
-rw-r--r--src/Authoring/QT3DSDM/Systems/Qt3DSDMXML.cpp70
2 files changed, 4 insertions, 67 deletions
diff --git a/src/Authoring/QT3DSDM/QT3DSDM.pro b/src/Authoring/QT3DSDM/QT3DSDM.pro
index d0367220..11a63370 100644
--- a/src/Authoring/QT3DSDM/QT3DSDM.pro
+++ b/src/Authoring/QT3DSDM/QT3DSDM.pro
@@ -19,7 +19,6 @@ INCLUDEPATH += \
../../Runtime/Source/datamodel \
../../Runtime/Source/render \
../../3rdparty/EASTL/UnknownVersion/include \
- ../../3rdparty/utf8cpp/2.3.2/source \
../../3rdparty/color \
..
diff --git a/src/Authoring/QT3DSDM/Systems/Qt3DSDMXML.cpp b/src/Authoring/QT3DSDM/Systems/Qt3DSDMXML.cpp
index 3d79ca33..2055adf1 100644
--- a/src/Authoring/QT3DSDM/Systems/Qt3DSDMXML.cpp
+++ b/src/Authoring/QT3DSDM/Systems/Qt3DSDMXML.cpp
@@ -36,7 +36,6 @@
#include <memory>
#include "foundation/StrConvertUTF.h"
#include "foundation/StringTable.h"
-#include "utf8.h"
#ifdef QT3DS_VC
#include <winsock2.h>
#include <windows.h> //output debug string
@@ -871,45 +870,8 @@ struct SimpleXmlWriter
Write(' ');
Write(name);
Write("=\"");
- size_t valueLen = strlen(NonNull(value));
- TXMLCharPtr start = value;
- TXMLCharPtr end = value + valueLen;
- TXMLCharPtr last = start;
- uint32_t item = 0;
- // Write out the data escaping unicode values where necessary
- // I am using utf8::internal because it returns an error code and does not through
- // exceptions; we don't always know the system we are running on will support or handle
- // exceptions gracefully.
- for (utf8::internal::utf_error err_code = utf8::internal::validate_next(start, end, item);
- last != end && err_code == utf8::internal::UTF8_OK;
- err_code = utf8::internal::validate_next(start, end, item)) {
- switch (item) {
- case '\r':
- break;
- case '\n':
- Write("&#10;");
- break;
- case '\t':
- Write("&#09;");
- break;
- case '<':
- Write("&lt;");
- break;
- case '>':
- Write("&gt;");
- break;
- case '"':
- Write("&quot;");
- break;
- case '&':
- Write("&amp;");
- break;
- default:
- m_Stream.Write(NVConstDataRef<QT3DSU8>((const QT3DSU8 *)last, (QT3DSU32)(start - last)));
- break;
- }
- last = start;
- }
+ QString str = QString::fromUtf8(nonNull(value)).toHtmlEscaped();
+ Write(str.toUtf8().constData());
Write("\"");
}
template <typename TData>
@@ -922,32 +884,8 @@ struct SimpleXmlWriter
{
if (!IsTrivial(value)) {
Close(false);
- size_t valueLen = strlen(NonNull(value));
- TXMLCharPtr start = value;
- TXMLCharPtr end = value + valueLen;
- TXMLCharPtr last = start;
- uint32_t item = 0;
- // Write out the data escaping unicode values where necessary
- for (utf8::internal::utf_error err_code =
- utf8::internal::validate_next(start, end, item);
- last != end && err_code == utf8::internal::UTF8_OK;
- err_code = utf8::internal::validate_next(start, end, item)) {
- switch (item) {
- case '<':
- Write("&lt;");
- break;
- case '>':
- Write("&gt;");
- break;
- case '&':
- Write("&amp;");
- break;
- default:
- m_Stream.Write(NVConstDataRef<QT3DSU8>((const QT3DSU8 *)last, (QT3DSU32)(start - last)));
- break;
- }
- last = start;
- }
+ QString str = QString::fromUtf8(nonNull(value)).toHtmlEscaped();
+ Write(str.toUtf8().constData());
m_OpenElements.back().second = true;
}
}