Index: toolkit/xre/nsUpdateDriver.cpp =================================================================== RCS file: /cvsroot/mozilla/toolkit/xre/nsUpdateDriver.cpp,v retrieving revision 1.11.2.4 diff -u -p -8 -r1.11.2.4 nsUpdateDriver.cpp --- toolkit/xre/nsUpdateDriver.cpp 8 Nov 2005 15:54:28 -0000 1.11.2.4 +++ toolkit/xre/nsUpdateDriver.cpp 8 Dec 2005 21:50:30 -0000 @@ -91,16 +91,21 @@ #ifdef PR_LOGGING static PRLogModuleInfo *sUpdateLog = PR_NewLogModule("updatedriver"); #endif #define LOG(args) PR_LOG(sUpdateLog, PR_LOG_DEBUG, args) #ifdef XP_WIN static const char kUpdaterBin[] = "updater.exe"; +#if defined(_MSC_VER) && _MSC_VER >= 1400 +// make the updater work with MS VC++ 2005 builds +static const char kMSVCRTDLL[] = "msvcr80.dll"; +static const char kMSVCRTDLLManifest[] = "Microsoft.VC80.CRT.manifest"; +#endif #else static const char kUpdaterBin[] = "updater"; #endif static const char kUpdaterINI[] = "updater.ini"; #ifdef XP_MACOSX static const char kUpdaterApp[] = "updater.app"; #endif @@ -225,16 +230,20 @@ CopyUpdaterIntoUpdateDir(nsIFile *appDir { // We have to move the updater binary and its resource file. const char *filesToMove[] = { #if defined(XP_MACOSX) kUpdaterApp, #else kUpdaterINI, kUpdaterBin, +#if defined(_MSC_VER) && _MSC_VER >= 1400 + kMSVCRTDLL, + kMSVCRTDLLManifest, +#endif #endif nsnull }; nsresult rv; for (const char **leafName = filesToMove; *leafName; ++leafName) { nsDependentCString leaf(*leafName);