Help required to change function prototype

Andrew Talbot Andrew.Talbot at talbotville.com
Wed Sep 6 09:52:53 CDT 2006


Hi,

I want to change UnmapViewOfFile() (in kernel) to take a LPCVOID, as per
the SDK. To do that, I first need to constify one of the parameters of
NtUnmapViewOfSection() (in ntdll), but changing it from PVOID to PCVOID in
winternl.h breaks compilation (in the "make depend" stage), thus:

In file included from ../../include/thread.h:29,
                 from relay.c:30:
../../include/winternl.h:1933: error: expected declaration specifiers or ... before PCVOID
make[2]: *** [relay.o] Error 1
make[1]: *** [winebuild] Error 2
make: *** [tools] Error 2

What am I doing wrong, please? The patch I want to submit is as follows:

Changelog:
    ntdll: Constify a formal parameter.

diff -urN a/dlls/ntdll/virtual.c b/dlls/ntdll/virtual.c
--- a/dlls/ntdll/virtual.c      2006-07-31 17:30:58.000000000 +0100
+++ b/dlls/ntdll/virtual.c      2006-09-06 15:04:25.000000000 +0100
@@ -1925,7 +1925,7 @@
  *             NtUnmapViewOfSection   (NTDLL.@)
  *             ZwUnmapViewOfSection   (NTDLL.@)
  */
-NTSTATUS WINAPI NtUnmapViewOfSection( HANDLE process, PVOID addr )
+NTSTATUS WINAPI NtUnmapViewOfSection( HANDLE process, PCVOID addr )
 {
     FILE_VIEW *view;
     NTSTATUS status = STATUS_INVALID_PARAMETER;
diff -urN a/include/winternl.h b/include/winternl.h
--- a/include/winternl.h        2006-08-04 17:17:26.000000000 +0100
+++ b/include/winternl.h        2006-09-06 14:57:29.000000000 +0100
@@ -1930,7 +1930,7 @@
 NTSTATUS  WINAPI NtUnloadKeyEx(POBJECT_ATTRIBUTES,HANDLE);
 NTSTATUS  WINAPI NtUnlockFile(HANDLE,PIO_STATUS_BLOCK,PLARGE_INTEGER,PLARGE_INTEGER,PULONG);
 NTSTATUS  WINAPI NtUnlockVirtualMemory(HANDLE,PVOID*,SIZE_T*,ULONG);
-NTSTATUS  WINAPI NtUnmapViewOfSection(HANDLE,PVOID);
+NTSTATUS  WINAPI NtUnmapViewOfSection(HANDLE,PCVOID);
 NTSTATUS  WINAPI NtVdmControl(ULONG,PVOID); 
 NTSTATUS  WINAPI NtWaitForSingleObject(HANDLE,BOOLEAN,const LARGE_INTEGER*);
 NTSTATUS  WINAPI NtWaitForMultipleObjects(ULONG,const HANDLE*,BOOLEAN,BOOLEAN,const LARGE_INTEGER*);

Thanks,

-- Andy.





More information about the wine-devel mailing list