summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorQt Continuous Integration System <qt-info@nokia.com>2010-09-10 07:22:27 (GMT)
committerQt Continuous Integration System <qt-info@nokia.com>2010-09-10 07:22:27 (GMT)
commit5e98551d3ccf3587b5ce738f38a54df1af6df9fb (patch)
tree68ef50680849cf0777dc8dc1ad0fb3dca8f622ff
parentf82cee5501d5c76aebe8475ff47b334962b42c21 (diff)
parentacb704241e752217bd2197a9884ade740db16d30 (diff)
downloadQt-5e98551d3ccf3587b5ce738f38a54df1af6df9fb.zip
Qt-5e98551d3ccf3587b5ce738f38a54df1af6df9fb.tar.gz
Qt-5e98551d3ccf3587b5ce738f38a54df1af6df9fb.tar.bz2
Merge branch '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1 into 4.7-integration
* '4.7' of scm.dev.nokia.troll.no:qt/oslo-staging-1: Read the data when the stream passed in is of type CArchiveStream
-rw-r--r--src/activeqt/control/qaxserverbase.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/activeqt/control/qaxserverbase.cpp b/src/activeqt/control/qaxserverbase.cpp
index ca16b39..d8e7ea3 100644
--- a/src/activeqt/control/qaxserverbase.cpp
+++ b/src/activeqt/control/qaxserverbase.cpp
@@ -2730,6 +2730,19 @@ HRESULT WINAPI QAxServerBase::Load(IStream *pStm)
qtarray.resize(stat.cbSize.LowPart);
ULONG read;
pStm->Read(qtarray.data(), stat.cbSize.LowPart, &read);
+ } else if (hres == E_NOTIMPL) {
+ ULONG read = 0;
+ while (hres != S_FALSE) {
+ QByteArray arrayRead;
+ arrayRead.resize(4098);
+ hres = pStm->Read(arrayRead.data(), arrayRead.size(), &read);
+ if (hres != S_OK && hres != S_FALSE) {
+ qtarray.resize(0);
+ break;
+ } else if (read == 0)
+ break;
+ qtarray.append(arrayRead);
+ }
}
const QMetaObject *mo = qt.object->metaObject();