On 28/07/2020 03:20, Takashi Yano via Cygwin-patches wrote:
Hi Jon,

On Sat, 18 Jul 2020 16:00:28 +0100
Jon Turney wrote:
Use the (undocumented) MEMORY_WORKING_SET_EX_INFORMATION in dumper to
determine if a MEM_IMAGE region is unsharable, and hence has been
modified.
---
  winsup/doc/utils.xml     |  8 ++---
  winsup/utils/Makefile.in |  2 +-
  winsup/utils/dumper.cc   | 63 ++++++++++++++++++++++++++++++++++++++--
  3 files changed, 65 insertions(+), 8 deletions(-)

After this commit, 32bit build failes with:

/usr/lib/gcc/i686-pc-cygwin/9.3.0/../../../../i686-pc-cygwin/bin/ld: 
dumper.o:/home/yano/newlib-cygwin/i686-pc-cygwin/winsup/utils/../../.././winsup/utils/dumper.cc:295:
 undefined reference to `NtQueryVirtualMemory'

Thanks very much for pointing this out.

This seems to be solved with the patch:

Yes, I guess that it needs that for stdcall.  I applied your patch.

diff --git a/winsup/utils/dumper.cc b/winsup/utils/dumper.cc
index 3af138b9e..36dbf9dbb 100644
--- a/winsup/utils/dumper.cc
+++ b/winsup/utils/dumper.cc
@@ -272,7 +272,7 @@ typedef enum _MEMORY_INFORMATION_CLASS
  } MEMORY_INFORMATION_CLASS;

  extern "C"
-NTSTATUS
+NTSTATUS NTAPI
  NtQueryVirtualMemory(HANDLE ProcessHandle,
                      LPVOID BaseAddress,
                      MEMORY_INFORMATION_CLASS MemoryInformationClass,

Reply via email to