Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
| Comment: | Fix [651e828a52]: Wrong Windows version reported for Windows 8.1 |
|---|---|
| Timelines: | family | ancestors | descendants | both | core-8-5-branch |
| Files: | files | file ages | folders |
| SHA1: |
8aefc70fdbe21d7ddb3073354c0a765f |
| User & Date: | jan.nijtmans 2014-02-03 14:43:52.707 |
References
|
2014-02-03
| ||
| 15:18 | • Closed ticket [651e828a52]: Wrong Windows version reported for Windows 8.1 plus 7 other changes artifact: 2c916a161e user: jan.nijtmans | |
Context
|
2014-02-04
| ||
| 15:17 | Simplify the core output operations of channels. Reduce duplicative and dead code. check-in: 9057fb00e2 user: dgp tags: core-8-5-branch | |
|
2014-02-03
| ||
| 22:58 | merge 8.5 check-in: c407e0fc64 user: dgp tags: dgp-optimize-output-stage | |
| 15:19 | Fix [651e828a52]: Wrong Windows version reported for Windows 8.1 check-in: 818d7d0f1a user: jan.nijtmans tags: trunk | |
| 14:43 | Fix [651e828a52]: Wrong Windows version reported for Windows 8.1 check-in: 8aefc70fdb user: jan.nijtmans tags: core-8-5-branch | |
|
2014-01-31
| ||
| 09:13 | Fix [4b3b7a3082]: tcl8.5.15/generic/tclExecute.c:7713: array index before sanity check ? check-in: f6a2f50eb8 user: jan.nijtmans tags: core-8-5-branch | |
Changes
Changes to unix/tclUnixInit.c.
| ︙ | ︙ | |||
29 30 31 32 33 34 35 | # include <sys/param.h> # if _BSDI_VERSION > 199501 # include <dlfcn.h> # endif #endif #ifdef __CYGWIN__ | | > > > | 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 |
# include <sys/param.h>
# if _BSDI_VERSION > 199501
# include <dlfcn.h>
# endif
#endif
#ifdef __CYGWIN__
DLLIMPORT extern __stdcall unsigned char GetVersionExW(void *);
DLLIMPORT extern __stdcall void *LoadLibraryW(const void *);
DLLIMPORT extern __stdcall void FreeLibrary(void *);
DLLIMPORT extern __stdcall void *GetProcAddress(void *, const char *);
DLLIMPORT extern __stdcall void GetSystemInfo(void *);
#define NUMPLATFORMS 4
static const char *const platforms[NUMPLATFORMS] = {
"Win32s", "Windows 95", "Windows NT", "Windows CE"
};
|
| ︙ | ︙ | |||
62 63 64 65 66 67 68 | DWORD dwNumberOfProcessors; DWORD dwProcessorType; DWORD dwAllocationGranularity; int wProcessorLevel; int wProcessorRevision; } SYSTEM_INFO; | | | | | 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
DWORD dwNumberOfProcessors;
DWORD dwProcessorType;
DWORD dwAllocationGranularity;
int wProcessorLevel;
int wProcessorRevision;
} SYSTEM_INFO;
typedef struct _OSVERSIONINFOW {
DWORD dwOSVersionInfoSize;
DWORD dwMajorVersion;
DWORD dwMinorVersion;
DWORD dwBuildNumber;
DWORD dwPlatformId;
wchar_t szCSDVersion[128];
} OSVERSIONINFOW;
#endif
#ifdef HAVE_COREFOUNDATION
#include <CoreFoundation/CoreFoundation.h>
#endif
/*
|
| ︙ | ︙ | |||
807 808 809 810 811 812 813 |
void
TclpSetVariables(
Tcl_Interp *interp)
{
#ifdef __CYGWIN__
SYSTEM_INFO sysInfo;
| | > | 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 |
void
TclpSetVariables(
Tcl_Interp *interp)
{
#ifdef __CYGWIN__
SYSTEM_INFO sysInfo;
static OSVERSIONINFOW osInfo;
static int osInfoInitialized = 0;
char buffer[TCL_INTEGER_SPACE * 2];
#elif !defined(NO_UNAME)
struct utsname name;
#endif
int unameOK;
Tcl_DString ds;
|
| ︙ | ︙ | |||
920 921 922 923 924 925 926 |
#else
Tcl_SetVar2(interp, "tcl_platform", "platform", "unix", TCL_GLOBAL_ONLY);
#endif
unameOK = 0;
#ifdef __CYGWIN__
unameOK = 1;
| > > > | > | > > > > > > > | 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 |
#else
Tcl_SetVar2(interp, "tcl_platform", "platform", "unix", TCL_GLOBAL_ONLY);
#endif
unameOK = 0;
#ifdef __CYGWIN__
unameOK = 1;
if (!osInfoInitialized) {
HANDLE handle = LoadLibraryW(L"NTDLL");
int(*getversion)(void *) = (int(*)(void *))GetProcAddress(handle, "RtlGetVersion");
osInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFOW);
if (!getversion || getversion(&osInfo)) {
GetVersionExW(&osInfo);
}
if (handle) {
FreeLibrary(handle);
}
osInfoInitialized = 1;
}
GetSystemInfo(&sysInfo);
if (osInfo.dwPlatformId < NUMPLATFORMS) {
Tcl_SetVar2(interp, "tcl_platform", "os",
platforms[osInfo.dwPlatformId], TCL_GLOBAL_ONLY);
}
sprintf(buffer, "%d.%d", osInfo.dwMajorVersion, osInfo.dwMinorVersion);
|
| ︙ | ︙ |
Changes to win/tclWinInit.c.
| ︙ | ︙ | |||
559 560 561 562 563 564 565 |
{
CONST char *ptr;
char buffer[TCL_INTEGER_SPACE * 2];
union {
SYSTEM_INFO info;
OemId oemId;
} sys;
| | > > > > | > | | > > > > > | 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 |
{
CONST char *ptr;
char buffer[TCL_INTEGER_SPACE * 2];
union {
SYSTEM_INFO info;
OemId oemId;
} sys;
static OSVERSIONINFOW osInfo;
static int osInfoInitialized = 0;
Tcl_DString ds;
WCHAR szUserName[UNLEN+1];
DWORD cchUserNameLen = UNLEN;
Tcl_SetVar2Ex(interp, "tclDefaultLibrary", NULL,
TclGetProcessGlobalValue(&defaultLibraryDir), TCL_GLOBAL_ONLY);
if (!osInfoInitialized) {
HANDLE handle = LoadLibraryW(L"NTDLL");
int(*getversion)(void *) = (int(*)(void *))GetProcAddress(handle, "RtlGetVersion");
osInfo.dwOSVersionInfoSize = sizeof(OSVERSIONINFOW);
if (!getversion || getversion(&osInfo)) {
GetVersionExW(&osInfo);
}
if (handle) {
FreeLibrary(handle);
}
osInfoInitialized = 1;
}
GetSystemInfo(&sys.info);
/*
* Define the tcl_platform array.
*/
Tcl_SetVar2(interp, "tcl_platform", "platform", "windows",
|
| ︙ | ︙ |