summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2020-05-05 15:37:55 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2020-05-05 21:39:38 +0200
commit7a6472a6d6c600698858de59e3f1dd1424ca32dd (patch)
treea5aa3b27e0f99a4dfaff53d23cfe0958752b746a
parentad000c50357c4e00fa559cc7c278af128a779a7e (diff)
Compile with QT_NO_CAST_TO_ASCII
Pick-to: 5.15 Task-number: QTBUG-78167 Change-Id: I628df5c4db8b072fa34a14890b031429b550b51a Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
-rw-r--r--src/activeqt/container/container.pro1
-rw-r--r--src/activeqt/container/qaxbase.cpp5
-rw-r--r--src/activeqt/container/qaxdump.cpp23
-rw-r--r--src/activeqt/control/control.pro1
-rw-r--r--src/activeqt/control/qaxserver.cpp18
-rw-r--r--src/activeqt/control/qaxserverbase.cpp7
6 files changed, 31 insertions, 24 deletions
diff --git a/src/activeqt/container/container.pro b/src/activeqt/container/container.pro
index 6844113..442005f 100644
--- a/src/activeqt/container/container.pro
+++ b/src/activeqt/container/container.pro
@@ -30,4 +30,3 @@ MODULE_CONFIG = dumpcpp
MODULE_MASTER_HEADER = ActiveQt
CONFIG += no_module_headers
load(qt_module)
-DEFINES -= QT_NO_CAST_TO_ASCII QT_USE_QSTRINGBUILDER
diff --git a/src/activeqt/container/qaxbase.cpp b/src/activeqt/container/qaxbase.cpp
index 6033672..5b6c481 100644
--- a/src/activeqt/container/qaxbase.cpp
+++ b/src/activeqt/container/qaxbase.cpp
@@ -564,7 +564,8 @@ public:
static bool signalHasReceivers(QObject *qobject, const char *signalName)
{
Q_ASSERT(qobject);
- return static_cast<QAxObject *>(qobject)->receivers(QByteArray::number(QSIGNAL_CODE) + signalName);
+ const QByteArray name = QByteArray::number(QSIGNAL_CODE) + signalName;
+ return static_cast<QAxObject *>(qobject)->receivers(name.constData()) > 0;
}
IConnectionPoint *cpoint = nullptr;
@@ -1505,7 +1506,7 @@ public:
void readEventInfo();
void readEventInterface(ITypeInfo *eventinfo, IConnectionPoint *cpoint);
- inline void addClassInfo(const char *key, const char *value)
+ inline void addClassInfo(const QByteArray &key, const QByteArray &value)
{
classinfo_list.insert(key, value);
}
diff --git a/src/activeqt/container/qaxdump.cpp b/src/activeqt/container/qaxdump.cpp
index 2313306..bc74e0f 100644
--- a/src/activeqt/container/qaxdump.cpp
+++ b/src/activeqt/container/qaxdump.cpp
@@ -160,20 +160,23 @@ QString qax_generateDocumentation(QAxBase *that)
stream << "<h3>Interfaces</h3>" << Qt::endl;
stream << "<ul>" << Qt::endl;
- const char *inter = nullptr;
- UINT interCount = 1;
- while ((inter = mo->classInfo(mo->indexOfClassInfo("Interface " + QByteArray::number(interCount))).value())) {
- stream << "<li>" << inter << Qt::endl;
- interCount++;
+ for (int interCount = 1; ; ++interCount) {
+ const QByteArray name = "Interface " + QByteArray::number(interCount);
+ const int index = mo->indexOfClassInfo(name.constData());
+ if (index < 0)
+ break;
+ stream << "<li>" << mo->classInfo(index).value() << Qt::endl;
}
stream << "</ul>" << Qt::endl;
stream << "<h3>Event Interfaces</h3>" << Qt::endl;
stream << "<ul>" << Qt::endl;
- interCount = 1;
- while ((inter = mo->classInfo(mo->indexOfClassInfo("Event Interface " + QByteArray::number(interCount))).value())) {
- stream << "<li>" << inter << Qt::endl;
- interCount++;
+ for (int interCount = 1; ; ++interCount) {
+ const QByteArray name = ("Event Interface " + QByteArray::number(interCount));
+ const int index = mo->indexOfClassInfo(name.constData());
+ if (index < 0)
+ break;
+ stream << "<li>" << mo->classInfo(index).value() << Qt::endl;
}
stream << "</ul>" << Qt::endl;
@@ -272,7 +275,7 @@ QString qax_generateDocumentation(QAxBase *that)
QLatin1String(name.constData()) + QLatin1Char(' ') +
QLatin1String(prototype.constData()) + QLatin1String("<tt> [signal]</tt></h3>\n");
if (typeLib) {
- interCount = 0;
+ UINT interCount = 0;
do {
if (typeInfo)
typeInfo->Release();
diff --git a/src/activeqt/control/control.pro b/src/activeqt/control/control.pro
index e55bdab..efdf224 100644
--- a/src/activeqt/control/control.pro
+++ b/src/activeqt/control/control.pro
@@ -31,4 +31,3 @@ MODULE_CONFIG = idcidl force_import_plugins
MODULE_MASTER_HEADER = ActiveQt
CONFIG += no_module_headers
load(qt_module)
-DEFINES -= QT_NO_CAST_TO_ASCII QT_USE_QSTRINGBUILDER
diff --git a/src/activeqt/control/qaxserver.cpp b/src/activeqt/control/qaxserver.cpp
index 92f03f9..7e85158 100644
--- a/src/activeqt/control/qaxserver.cpp
+++ b/src/activeqt/control/qaxserver.cpp
@@ -267,18 +267,21 @@ static void UpdateRegistryKeys(bool bRegister, const QString keyPath, QScopedPoi
const QString versionLessProgId = module + dot + className;
const QString progId = versionLessProgId + dot + classMajorVersion;
QString key = slash + progId;
- settings->setValue(key + QLatin1String("/."), className + QLatin1String(" Class"));
+ settings->setValue(key + QLatin1String("/."),
+ QString(className + QLatin1String(" Class")));
settings->setValue(key + QLatin1String("/CLSID/."), classId);
if (insertable)
settings->setValue(key + QLatin1String("/Insertable/."), QVariant(QLatin1String("")));
key = slash + module + dot + className;
- settings->setValue(key + QLatin1String("/."), className + QLatin1String(" Class"));
+ settings->setValue(key + QLatin1String("/."),
+ QString(className + QLatin1String(" Class")));
settings->setValue(key + QLatin1String("/CLSID/."), classId);
settings->setValue(key + QLatin1String("/CurVer/."), progId);
key = QLatin1String("/CLSID/") + classId;
- settings->setValue(key + QLatin1String("/."), className + QLatin1String(" Class"));
+ settings->setValue(key + QLatin1String("/."),
+ QString(className + QLatin1String(" Class")));
settings->setValue(key + QLatin1String("/AppID"), appId);
if (control)
settings->setValue(key + QLatin1String("/Control/."), QVariant(QLatin1String("")));
@@ -288,12 +291,12 @@ static void UpdateRegistryKeys(bool bRegister, const QString keyPath, QScopedPoi
settings->setValue(key + QLatin1String("/InProcServer32/."), file);
else
settings->setValue(key + QLatin1String("/LocalServer32/."),
- QLatin1Char('\"') + file + QLatin1String("\" -activex"));
+ QString(QLatin1Char('\"') + file + QLatin1String("\" -activex")));
settings->setValue(key + QLatin1String("/MiscStatus/."), control ? QLatin1String("1") : QLatin1String("0"));
settings->setValue(key + QLatin1String("/MiscStatus/1/."), QString::number(olemisc));
settings->setValue(key + QLatin1String("/Programmable/."), QVariant(QLatin1String("")));
- settings->setValue(key + QLatin1String("/ToolboxBitmap32/."), QLatin1Char('\"') +
- file + QLatin1String("\", 101"));
+ settings->setValue(key + QLatin1String("/ToolboxBitmap32/."),
+ QString(QLatin1Char('\"') + file + QLatin1String("\", 101")));
settings->setValue(key + QLatin1String("/TypeLib/."), libId);
settings->setValue(key + QLatin1String("/Version/."), classVersion);
settings->setValue(key + QLatin1String("/VersionIndependentProgID/."), versionLessProgId);
@@ -318,7 +321,8 @@ static void UpdateRegistryKeys(bool bRegister, const QString keyPath, QScopedPoi
if (!extension.isEmpty()) {
key = slash + extension;
- settings->setValue(key + QLatin1String("/."), module + dot + className);
+ settings->setValue(key + QLatin1String("/."),
+ QString(module + dot + className));
settings->setValue(key + QLatin1String("/Content Type"), mime);
mime.replace(slash, QLatin1Char('\\'));
diff --git a/src/activeqt/control/qaxserverbase.cpp b/src/activeqt/control/qaxserverbase.cpp
index 57ca767..3dad740 100644
--- a/src/activeqt/control/qaxserverbase.cpp
+++ b/src/activeqt/control/qaxserverbase.cpp
@@ -48,7 +48,6 @@
**
****************************************************************************/
-#define QT_NO_CAST_TO_ASCII
#define NOMINMAX
#include <qabstracteventdispatcher.h>
@@ -2384,8 +2383,10 @@ HRESULT WINAPI QAxServerBase::Invoke(DISPID dispidMember, REFIID riid,
nameLength = name.length();
name += '(';
// no parameter - shortcut
- if (!pDispParams->cArgs)
- index = mo->indexOfSlot((name + ')'));
+ if (!pDispParams->cArgs) {
+ const QByteArray slotName = name + ')';
+ index = mo->indexOfSlot(slotName.constData());
+ }
// search
if (index == -1) {
for (int i = 0; i < mo->methodCount(); ++i) {