diff --git a/src/plugins/cpptools/cppcodecompletion.cpp b/src/plugins/cpptools/cppcodecompletion.cpp
index b6bac92bf9b18a65248e6bb9b893300ef68f03cd..1f5bb7e1f4efa7f48be94c0a24f0091912827da8 100644
--- a/src/plugins/cpptools/cppcodecompletion.cpp
+++ b/src/plugins/cpptools/cppcodecompletion.cpp
@@ -598,7 +598,9 @@ bool CppCodeCompletion::completeMember(const QList<TypeOfExpression::Result> &re
         if (ReferenceType *refTy = ty->asReferenceType())
             ty = refTy->elementType();
 
-        if (NamedType *namedTy = ty->asNamedType()) {
+        if (Class *classTy = ty->asClass()) {
+            classObjectCandidates.append(classTy);
+        } else if (NamedType *namedTy = ty->asNamedType()) {
             // ### This code is pretty slow.
             const QList<Symbol *> candidates = context.resolve(namedTy->name());
             foreach (Symbol *candidate, candidates) {
@@ -697,6 +699,8 @@ bool CppCodeCompletion::completeMember(const QList<TypeOfExpression::Result> &re
                 ++m_startPosition;
                 namedTy = ptrTy->elementType()->asNamedType();
             }
+        } else if (Class *classTy = ty->asClass()) {
+            classObjectCandidates.append(classTy);
         } else {
             namedTy = ty->asNamedType();
             if (! namedTy) {
diff --git a/src/tools/qtlibspatcher/binpatch.cpp b/src/tools/qtlibspatcher/binpatch.cpp
index 7e1dcfbbdd83159e37908e7798d8956ff7ad0834..43e5fd84c8e0c02ea3bcf93fb769084e3b6c8606 100644
--- a/src/tools/qtlibspatcher/binpatch.cpp
+++ b/src/tools/qtlibspatcher/binpatch.cpp
@@ -35,7 +35,14 @@
 #include <cstring>
 #include <locale>
 
+#include <qglobal.h>
+ 
 #include "binpatch.h"
+ 
+#ifdef Q_OS_WIN
+#	define strcasecmp _stricmp
+#	define strncasecmp _strnicmp
+#endif
 
 // returns positive value if it finds a null termination inside the buffer
 long BinPatch::getBufferStringLength(char *data, char *end)
diff --git a/src/tools/qtlibspatcher/qtlibspatchermain.cpp b/src/tools/qtlibspatcher/qtlibspatchermain.cpp
index c186b8a895dffde2a2cc4d4f2b37b726cdea1243..b66a35f294cd38e865ca2e41eaa673b0cd4bf09c 100644
--- a/src/tools/qtlibspatcher/qtlibspatchermain.cpp
+++ b/src/tools/qtlibspatcher/qtlibspatchermain.cpp
@@ -42,8 +42,10 @@
 #include <QtCore/QDebug>
 
 #ifdef Q_OS_WIN
-    const char * const oldInstallBase = "C:/qt-greenhouse/Trolltech/Code_less_create_more/"
-        "Trolltech/Code_less_create_more/Troll/4.4.3";
+#	define QT_INSTALL_DIR "C:/qt-greenhouse/Trolltech/Code_less_create_more/Trolltech/Code_less_create_more/Troll/4.4.3";
+
+	const char * const oldInstallBase = QT_INSTALL_DIR;
+	const char * const oldSourceBase = QT_INSTALL_DIR;
 #else
     const char * const oldSourceBase = "/home/berlin/dev/qt-4.4.3-temp/qt-x11-opensource-src-4.4.3";
     const char * const oldInstallBase = "/home/berlin/dev/qt-4.4.3-shipping/qt";
@@ -627,9 +629,9 @@ void patchQMakeSpec(const char *path)
     out << all;
 }
 
+#ifndef Q_OS_WIN
 const char * const textFileFileNames[] =
 {
-#ifndef Q_OS_WIN
     // *.la
     "/lib/libQtCore.la",
     "/lib/libQt3Support.la",
@@ -692,8 +694,8 @@ const char * const textFileFileNames[] =
 
     // misc
     "/mkspecs/qconfig.pri"
-#endif
 };
+#endif
 
 void replaceInTextFile(const char * fileName,
         const char * oldText, const char * newText,
@@ -726,6 +728,7 @@ void replaceInTextFile(const char * fileName,
 
 void patchTextFiles(const char *newInstallBase)
 {
+#ifndef Q_OS_WIN
     const char * const baseQtPath = newInstallBase;
     const char * const newSourceBase = newInstallBase;
     const int fileCount = sizeof(textFileFileNames) / sizeof(const char *);
@@ -733,16 +736,13 @@ void patchTextFiles(const char *newInstallBase)
         char * const fileName = allocFileNameCopyAppend(baseQtPath, textFileFileNames[i]);
         logFileName(fileName);
         logDiff(oldSourceBase, newSourceBase);
-#ifndef Q_OS_WIN
         logDiff(oldInstallBase, newInstallBase);
-#endif
         replaceInTextFile(fileName,
-#ifndef Q_OS_WIN
                 oldSourceBase, newSourceBase,
-#endif
                 oldInstallBase, newInstallBase);
         delete[] fileName;
     }
+#endif
 
     patchQMakeSpec(newInstallBase);
 }