From kde-commits Tue Mar 31 21:30:03 2009 From: Ralf Habacker Date: Tue, 31 Mar 2009 21:30:03 +0000 To: kde-commits Subject: KDE/kdelibs/kdecore/kernel Message-Id: <1238535003.923655.30538.nullmailer () svn ! kde ! org> X-MARC-Message: https://marc.info/?l=kde-commits&m=123853501330496 SVN commit 947610 by habacker: fixed crash on loading kdecore.dll with regsrv32 M +7 -0 kkernel_win.cpp --- trunk/KDE/kdelibs/kdecore/kernel/kkernel_win.cpp #947609:947610 @@ -360,6 +360,13 @@ return subSystem; PIMAGE_DOS_HEADER dosHeader = (PIMAGE_DOS_HEADER)0x00400000; + + // the applications module base adresse in memory is normally 0x00400000. + // When loading kdecore library from regsrv32 a different address (0x01000000) is used. + // Check for this additional possible base address + if (IsBadReadPtr(dosHeader,sizeof(IMAGE_DOS_HEADER))) + dosHeader = (PIMAGE_DOS_HEADER)0x01000000; + PIMAGE_NT_HEADERS ntHeader = (PIMAGE_NT_HEADERS) ((char *)dosHeader + dosHeader->e_lfanew); if (ntHeader->Signature != 0x00004550) {