summaryrefslogtreecommitdiff
path: root/src/activeqt
diff options
context:
space:
mode:
authorPrasanth Ullattil <prasanth.ullattil@nokia.com>2010-02-10 10:36:05 +0100
committerPrasanth Ullattil <prasanth.ullattil@nokia.com>2010-02-10 11:34:17 +0100
commit238528f67922d74bb951dae1a4a6a3745ce8b178 (patch)
tree1313eb1b48d1120dd8d3a5b6375c2f7e7e16580f /src/activeqt
parent5be0f78985f73515645762b2895b6969be69a6e4 (diff)
downloadqt4-tools-238528f67922d74bb951dae1a4a6a3745ce8b178.tar.gz
Incorrect property setter generated by dumpcpp for Microsoft Word 2007.
This particular propery setter had multiple parameters (or is Array type property). An incorrect return type was set by the function generator. This patch clears the type name for such INVOKE_PROPERTYPUT functions, the return type will be void. Task-number: QTBUG-7571 Reviewed-by: Volker Hilsheimer
Diffstat (limited to 'src/activeqt')
-rw-r--r--src/activeqt/container/qaxbase.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/activeqt/container/qaxbase.cpp b/src/activeqt/container/qaxbase.cpp
index 99447a98a8..02a29d9009 100644
--- a/src/activeqt/container/qaxbase.cpp
+++ b/src/activeqt/container/qaxbase.cpp
@@ -2543,6 +2543,11 @@ void MetaObjectGenerator::readFuncsInfo(ITypeInfo *typeinfo, ushort nFuncs)
break;
}
if (funcdesc->invkind == INVOKE_PROPERTYPUT) {
+ // remove the typename guessed for property setters
+ // its done only for setter's with more than one parameter.
+ if (funcdesc->cParams - funcdesc->cParamsOpt > 1) {
+ type.clear();
+ }
QByteArray set;
if (isupper(prototype.at(0))) {
set = "Set";