Improve 32-bit detecting 64-bit; release v1.66.

This commit is contained in:
Jason Hood 2013-09-20 03:15:05 +10:00
parent 75a65af4d6
commit 0394977368
4 changed files with 15 additions and 12 deletions

View File

@ -78,7 +78,7 @@
don't write the reset sequence if output is redirected. don't write the reset sequence if output is redirected.
*/ */
#define PDATE L"4 September, 2013" #define PDATE L"20 September, 2013"
#include "ansicon.h" #include "ansicon.h"
#include "version.h" #include "version.h"

View File

@ -85,9 +85,9 @@ int ProcessType( LPPROCESS_INFORMATION pinfo, BOOL* gui )
} }
} }
#ifdef _WIN32 #ifdef _WIN32
// If a 32-bit process manages to load a 64-bit one, we may miss the base // If a 32-bit process loads a 64-bit one, we may miss the base
// address. If the pointer overflows, assume 64-bit and abort. // address. If the pointer overflows, assume 64-bit.
if (ptr > ptr + minfo.RegionSize) if (((DWORD)ptr >> 12) + ((DWORD)minfo.RegionSize >> 12) > 0x80000)
{ {
#ifdef W32ON64 #ifdef W32ON64
DEBUGSTR( 1, L" Pointer overflow: assuming 64-bit console" ); DEBUGSTR( 1, L" Pointer overflow: assuming 64-bit console" );

View File

@ -3,7 +3,7 @@
Copyright 2005-2013 Jason Hood Copyright 2005-2013 Jason Hood
Version 1.65. Freeware Version 1.66. Freeware
Description Description
@ -270,6 +270,9 @@ Version History
Legend: + added, - bug-fixed, * changed. Legend: + added, - bug-fixed, * changed.
1.66 - 20 September, 2013:
- fix 32-bit process trying to detect 64-bit process.
1.65 - 4 September, 2013: 1.65 - 4 September, 2013:
- fix finding 32-bit LoadLibraryW address from 64-bit; - fix finding 32-bit LoadLibraryW address from 64-bit;
- fix \e[K (was using window, not buffer). - fix \e[K (was using window, not buffer).
@ -458,5 +461,5 @@ Distribution
in LICENSE.txt. in LICENSE.txt.
============================== ===============================
Jason Hood, 4 September, 2013. Jason Hood, 20 September, 2013.

View File

@ -2,11 +2,11 @@
version.h - Version defines. version.h - Version defines.
*/ */
#define PVERS L"1.65" // wide string #define PVERS L"1.66" // wide string
#define PVERSA "1.65" // ANSI string (windres 2.16.91 didn't like L) #define PVERSA "1.66" // ANSI string (windres 2.16.91 didn't like L)
#define PVERE L"165" // wide environment string #define PVERE L"166" // wide environment string
#define PVEREA "165" // ANSI environment string #define PVEREA "166" // ANSI environment string
#define PVERB 1,6,5,0 // binary (resource) #define PVERB 1,6,6,0 // binary (resource)
#ifdef _WIN64 #ifdef _WIN64
# define BITS L"64" # define BITS L"64"