Use size() instead of strlen.
This commit is contained in:
parent
b9f3e7c601
commit
87662cb70f
|
@ -190,11 +190,12 @@ void VAbstractConverter::ValidateXML(const QString &schema) const
|
||||||
XERCES_CPP_NAMESPACE::XercesDOMParser domParser;
|
XERCES_CPP_NAMESPACE::XercesDOMParser domParser;
|
||||||
domParser.setErrorHandler(&parserErrorHandler);
|
domParser.setErrorHandler(&parserErrorHandler);
|
||||||
|
|
||||||
QByteArray data = fileSchema.readAll();
|
QByteArray const data = fileSchema.readAll();
|
||||||
const char *schemaData = data.constData();
|
const char *schemaData = data.constData();
|
||||||
|
const auto schemaSize = static_cast<size_t>(data.size());
|
||||||
|
|
||||||
QScopedPointer<XERCES_CPP_NAMESPACE::InputSource> grammarSource(new XERCES_CPP_NAMESPACE::MemBufInputSource(
|
QScopedPointer<XERCES_CPP_NAMESPACE::InputSource> grammarSource(new XERCES_CPP_NAMESPACE::MemBufInputSource(
|
||||||
reinterpret_cast<const XMLByte *>(schemaData), strlen(schemaData), "schema"));
|
reinterpret_cast<const XMLByte *>(schemaData), schemaSize, "schema"));
|
||||||
|
|
||||||
if (domParser.loadGrammar(*grammarSource, XERCES_CPP_NAMESPACE::Grammar::SchemaGrammarType, true) == nullptr)
|
if (domParser.loadGrammar(*grammarSource, XERCES_CPP_NAMESPACE::Grammar::SchemaGrammarType, true) == nullptr)
|
||||||
{
|
{
|
||||||
|
@ -229,11 +230,12 @@ void VAbstractConverter::ValidateXML(const QString &schema) const
|
||||||
throw VException(errorMsg);
|
throw VException(errorMsg);
|
||||||
}
|
}
|
||||||
|
|
||||||
QByteArray patternFileData = pattern.readAll();
|
QByteArray const patternFileData = pattern.readAll();
|
||||||
const char *patternData = patternFileData.constData();
|
const char *patternData = patternFileData.constData();
|
||||||
|
const auto patternSize = static_cast<size_t>(patternFileData.size());
|
||||||
|
|
||||||
QScopedPointer<XERCES_CPP_NAMESPACE::InputSource> patternSource(new XERCES_CPP_NAMESPACE::MemBufInputSource(
|
QScopedPointer<XERCES_CPP_NAMESPACE::InputSource> patternSource(new XERCES_CPP_NAMESPACE::MemBufInputSource(
|
||||||
reinterpret_cast<const XMLByte *>(patternData), strlen(patternData), "pattern"));
|
reinterpret_cast<const XMLByte *>(patternData), patternSize, "pattern"));
|
||||||
|
|
||||||
domParser.parse(*patternSource);
|
domParser.parse(*patternSource);
|
||||||
|
|
||||||
|
|
|
@ -27,19 +27,19 @@
|
||||||
*************************************************************************/
|
*************************************************************************/
|
||||||
#include "tst_xsdschema.h"
|
#include "tst_xsdschema.h"
|
||||||
|
|
||||||
#include "../ifc/xml/vpatternconverter.h"
|
|
||||||
#include "../ifc/xml/vlabeltemplateconverter.h"
|
#include "../ifc/xml/vlabeltemplateconverter.h"
|
||||||
#include "../ifc/xml/vlayoutconverter.h"
|
#include "../ifc/xml/vlayoutconverter.h"
|
||||||
|
#include "../ifc/xml/vparsererrorhandler.h"
|
||||||
|
#include "../ifc/xml/vpatternconverter.h"
|
||||||
#include "../ifc/xml/vvitconverter.h"
|
#include "../ifc/xml/vvitconverter.h"
|
||||||
#include "../ifc/xml/vvstconverter.h"
|
#include "../ifc/xml/vvstconverter.h"
|
||||||
#include "../ifc/xml/vwatermarkconverter.h"
|
#include "../ifc/xml/vwatermarkconverter.h"
|
||||||
#include "../ifc/xml/vparsererrorhandler.h"
|
|
||||||
|
|
||||||
#include <QTest>
|
#include <QTest>
|
||||||
|
|
||||||
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
|
#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0)
|
||||||
#include <xercesc/parsers/XercesDOMParser.hpp>
|
|
||||||
#include <xercesc/framework/MemBufInputSource.hpp>
|
#include <xercesc/framework/MemBufInputSource.hpp>
|
||||||
|
#include <xercesc/parsers/XercesDOMParser.hpp>
|
||||||
|
|
||||||
#include <QMap>
|
#include <QMap>
|
||||||
#else
|
#else
|
||||||
|
@ -65,16 +65,14 @@ void ValidateSchema(const QString &schema)
|
||||||
XERCES_CPP_NAMESPACE::XercesDOMParser domParser;
|
XERCES_CPP_NAMESPACE::XercesDOMParser domParser;
|
||||||
domParser.setErrorHandler(&parserErrorHandler);
|
domParser.setErrorHandler(&parserErrorHandler);
|
||||||
|
|
||||||
QByteArray data = fileSchema.readAll();
|
QByteArray const data = fileSchema.readAll();
|
||||||
const char *schemaData = data.constData();
|
const char *schemaData = data.constData();
|
||||||
|
const auto schemaSize = static_cast<size_t>(data.size());
|
||||||
|
|
||||||
QScopedPointer<XERCES_CPP_NAMESPACE::InputSource> grammarSource(
|
QScopedPointer<XERCES_CPP_NAMESPACE::InputSource> grammarSource(new XERCES_CPP_NAMESPACE::MemBufInputSource(
|
||||||
new XERCES_CPP_NAMESPACE::MemBufInputSource(reinterpret_cast<const XMLByte*>(schemaData),
|
reinterpret_cast<const XMLByte *>(schemaData), schemaSize, "schema"));
|
||||||
strlen(schemaData), "schema"));
|
|
||||||
|
|
||||||
if (domParser.loadGrammar(
|
if (domParser.loadGrammar(*grammarSource, XERCES_CPP_NAMESPACE::Grammar::SchemaGrammarType, true) == nullptr)
|
||||||
*grammarSource,
|
|
||||||
XERCES_CPP_NAMESPACE::Grammar::SchemaGrammarType, true) == nullptr)
|
|
||||||
{
|
{
|
||||||
QFAIL(qUtf8Printable(QStringLiteral("%1 Could not load schema file '%2'.")
|
QFAIL(qUtf8Printable(QStringLiteral("%1 Could not load schema file '%2'.")
|
||||||
.arg(parserErrorHandler.StatusMessage(), fileSchema.fileName())));
|
.arg(parserErrorHandler.StatusMessage(), fileSchema.fileName())));
|
||||||
|
@ -120,7 +118,8 @@ auto HashToMap(const QHash<unsigned int, QString> &hash) -> QMap<unsigned int, Q
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
TST_XSDShema::TST_XSDShema(QObject *parent)
|
TST_XSDShema::TST_XSDShema(QObject *parent)
|
||||||
: QObject(parent)
|
: QObject(parent)
|
||||||
{}
|
{
|
||||||
|
}
|
||||||
|
|
||||||
//---------------------------------------------------------------------------------------------------------------------
|
//---------------------------------------------------------------------------------------------------------------------
|
||||||
void TST_XSDShema::TestPatternSchema_data()
|
void TST_XSDShema::TestPatternSchema_data()
|
||||||
|
|
Loading…
Reference in New Issue
Block a user