Subject: bug#50453: 27.2; Portable dumper broken on MSW

From: Eli Zaretskii <[email-masked]>
Date: Thu, 09 Sep 2021 19:24:43 +0300

> From: Po Lu <[email-masked]>
> Cc: [email-masked]
> Date: Thu, 09 Sep 2021 20:40:49 +0800
> 
> Eli Zaretskii <[email-masked]> writes:
> 
> > Can you put a breakpoint in dump_map_file_w32 and verify that it is
> > called?  If it is indeed called, can you step through it and see if it
> > fails, and if so, how?
> 
> I tried a few times, but I gave up because Windows kept crashing.
> 
> However, the portable dumper seems to rely on a function named
> `MapViewOfFileEx' at line 4499 of pdumper.c.
> 
> According to the documentation, the function is only available on
> Windows XP or later; this seems to be a convincing explanation for the
> failure.

The current MS documentation is "inaccurate", to say the least: they
consistently removed from it any references to versions of Windows
before Windows 2000/XP.

I use this instead:

  http://winapi.freetechsecrets.com/win32/WIN32MapViewOfFileEx.htm

and it says this is available on Windows 9X, but there's a special
requirement regarding the flags, and I see that we don't fulfill that
requirement.

But I don't know how to proceed from here: you are probably unable to
build Emacs for Windows 98, and I don't know how else to ask you to
try some modifications of the current code.  Any ideas?

> Specifically, I'm referring to the "Requirements" section of:
> https://docs.microsoft.com/en-us/windows/win32/api/memoryapi/nf-memoryapi-mapviewoffileex,
> which states:
> 
> Minimum supported client: Windows XP [desktop apps only]

That's a lie.