Commit c5247da2 authored by Geoff Voelker's avatar Geoff Voelker
Browse files

(get_emacs_configuration): Use GetVersionEx to

handle NT5.0 correctly.  Include build number in configuration.
w32heap.c (osinfo_cache): New variable.
parent 64b08c88
......@@ -789,6 +789,7 @@ char *
get_emacs_configuration (void)
{
char *arch, *oem, *os;
int build_num;
/* Determine the processor type. */
switch (get_processor_type ())
......@@ -830,10 +831,37 @@ get_emacs_configuration (void)
/* Let oem be "*" until we figure out how to decode the OEM field. */
oem = "*";
os = (GetVersion () & OS_WIN95) ? "windows95" : "nt";
switch (osinfo_cache.dwPlatformId) {
case VER_PLATFORM_WIN32_NT:
os = "nt";
build_num = osinfo_cache.dwBuildNumber;
break;
case VER_PLATFORM_WIN32_WINDOWS:
if (osinfo_cache.dwMinorVersion == 0) {
os = "windows95";
} else {
os = "windows98";
}
build_num = LOWORD (osinfo_cache.dwBuildNumber);
break;
case VER_PLATFORM_WIN32s:
/* Not supported, should not happen. */
os = "windows32s";
build_num = LOWORD (osinfo_cache.dwBuildNumber);
break;
default:
os = "unknown";
build_num = 0;
break;
}
if (osinfo_cache.dwPlatformId == VER_PLATFORM_WIN32_NT) {
sprintf (configuration_buffer, "%s-%s-%s%d.%d.%d", arch, oem, os,
get_w32_major_version (), get_w32_minor_version (), build_num);
} else {
sprintf (configuration_buffer, "%s-%s-%s.%d", arch, oem, os, build_num);
}
sprintf (configuration_buffer, "%s-%s-%s%d.%d", arch, oem, os,
get_w32_major_version (), get_w32_minor_version ());
return configuration_buffer;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment