Fossil SCM
Cygwin64 has a 64-bit "long" while Win64 has a 32-bit "long". Correct for that.
Commit
4ff370c8323a94bfdeeabf18be7a86827bf22e5b
Parent
c05cc27300e351a…
1 file changed
+12
-9
+12
-9
| --- src/cygsup.h | ||
| +++ src/cygsup.h | ||
| @@ -67,28 +67,31 @@ | ||
| 67 | 67 | /* |
| 68 | 68 | ******************************************************************************* |
| 69 | 69 | ** Declare any Cygwin-specific Win32 or other APIs here. Functions declared in |
| 70 | 70 | ** this section should use the built-in ANSI C types in order to make sure this |
| 71 | 71 | ** header file continues to work as a self-contained unit. |
| 72 | +** | |
| 73 | +** On Cygwin64, "long" is 64-bit but in Win64 it's 32-bit. That's why in | |
| 74 | +** the signatures below "long" should not be used. Use "int" in stead. | |
| 72 | 75 | ******************************************************************************* |
| 73 | 76 | */ |
| 74 | 77 | |
| 75 | -WINADVAPI extern WINAPI long RegOpenKeyExW( | |
| 78 | +WINADVAPI extern WINAPI int RegOpenKeyExW( | |
| 76 | 79 | void *, /* HKEY */ |
| 77 | 80 | const wchar_t *, /* LPCWSTR */ |
| 78 | - unsigned long, /* DWORD */ | |
| 79 | - unsigned long, /* REGSAM */ | |
| 81 | + unsigned int, /* DWORD */ | |
| 82 | + unsigned int, /* REGSAM */ | |
| 80 | 83 | void * /* PHKEY */ |
| 81 | 84 | ); |
| 82 | 85 | |
| 83 | -WINADVAPI extern WINAPI long RegQueryValueExW( | |
| 86 | +WINADVAPI extern WINAPI int RegQueryValueExW( | |
| 84 | 87 | void *, /* HKEY */ |
| 85 | 88 | const wchar_t *, /* LPCWSTR */ |
| 86 | - unsigned long *, /* LPDWORD */ | |
| 87 | - unsigned long *, /* LPDWORD */ | |
| 89 | + unsigned int *, /* LPDWORD */ | |
| 90 | + unsigned int *, /* LPDWORD */ | |
| 88 | 91 | unsigned char *, /* LPBYTE */ |
| 89 | - unsigned long * /* LPDWORD */ | |
| 92 | + unsigned int * /* LPDWORD */ | |
| 90 | 93 | ); |
| 91 | 94 | |
| 92 | 95 | SHSTDAPI extern STDAPI void *ShellExecuteW( |
| 93 | 96 | void *, /* HWND */ |
| 94 | 97 | const wchar_t *, /* LPCWSTR */ |
| @@ -98,11 +101,11 @@ | ||
| 98 | 101 | int /* INT */ |
| 99 | 102 | ); |
| 100 | 103 | |
| 101 | 104 | WINBASEAPI extern WINAPI int WideCharToMultiByte( |
| 102 | 105 | unsigned int, /* UINT */ |
| 103 | - unsigned long, /* DWORD */ | |
| 106 | + unsigned int, /* DWORD */ | |
| 104 | 107 | const wchar_t *, /* LPCWSTR */ |
| 105 | 108 | int, /* int */ |
| 106 | 109 | char *, /* LPSTR */ |
| 107 | 110 | int, /* int */ |
| 108 | 111 | const char *, /* LPCSTR */ |
| @@ -109,13 +112,13 @@ | ||
| 109 | 112 | int * /* LPBOOL */ |
| 110 | 113 | ); |
| 111 | 114 | |
| 112 | 115 | WINBASEAPI extern WINAPI int MultiByteToWideChar( |
| 113 | 116 | unsigned int, /* UINT */ |
| 114 | - unsigned long, /* DWORD */ | |
| 117 | + unsigned int, /* DWORD */ | |
| 115 | 118 | const char *, /* LPCSTR */ |
| 116 | 119 | int, /* int */ |
| 117 | 120 | wchar_t *, /* LPWSTR */ |
| 118 | 121 | int /* int */ |
| 119 | 122 | ); |
| 120 | 123 | |
| 121 | 124 | #endif /* defined(__CYGWIN__) && !defined(CYGSUP_H) */ |
| 122 | 125 |
| --- src/cygsup.h | |
| +++ src/cygsup.h | |
| @@ -67,28 +67,31 @@ | |
| 67 | /* |
| 68 | ******************************************************************************* |
| 69 | ** Declare any Cygwin-specific Win32 or other APIs here. Functions declared in |
| 70 | ** this section should use the built-in ANSI C types in order to make sure this |
| 71 | ** header file continues to work as a self-contained unit. |
| 72 | ******************************************************************************* |
| 73 | */ |
| 74 | |
| 75 | WINADVAPI extern WINAPI long RegOpenKeyExW( |
| 76 | void *, /* HKEY */ |
| 77 | const wchar_t *, /* LPCWSTR */ |
| 78 | unsigned long, /* DWORD */ |
| 79 | unsigned long, /* REGSAM */ |
| 80 | void * /* PHKEY */ |
| 81 | ); |
| 82 | |
| 83 | WINADVAPI extern WINAPI long RegQueryValueExW( |
| 84 | void *, /* HKEY */ |
| 85 | const wchar_t *, /* LPCWSTR */ |
| 86 | unsigned long *, /* LPDWORD */ |
| 87 | unsigned long *, /* LPDWORD */ |
| 88 | unsigned char *, /* LPBYTE */ |
| 89 | unsigned long * /* LPDWORD */ |
| 90 | ); |
| 91 | |
| 92 | SHSTDAPI extern STDAPI void *ShellExecuteW( |
| 93 | void *, /* HWND */ |
| 94 | const wchar_t *, /* LPCWSTR */ |
| @@ -98,11 +101,11 @@ | |
| 98 | int /* INT */ |
| 99 | ); |
| 100 | |
| 101 | WINBASEAPI extern WINAPI int WideCharToMultiByte( |
| 102 | unsigned int, /* UINT */ |
| 103 | unsigned long, /* DWORD */ |
| 104 | const wchar_t *, /* LPCWSTR */ |
| 105 | int, /* int */ |
| 106 | char *, /* LPSTR */ |
| 107 | int, /* int */ |
| 108 | const char *, /* LPCSTR */ |
| @@ -109,13 +112,13 @@ | |
| 109 | int * /* LPBOOL */ |
| 110 | ); |
| 111 | |
| 112 | WINBASEAPI extern WINAPI int MultiByteToWideChar( |
| 113 | unsigned int, /* UINT */ |
| 114 | unsigned long, /* DWORD */ |
| 115 | const char *, /* LPCSTR */ |
| 116 | int, /* int */ |
| 117 | wchar_t *, /* LPWSTR */ |
| 118 | int /* int */ |
| 119 | ); |
| 120 | |
| 121 | #endif /* defined(__CYGWIN__) && !defined(CYGSUP_H) */ |
| 122 |
| --- src/cygsup.h | |
| +++ src/cygsup.h | |
| @@ -67,28 +67,31 @@ | |
| 67 | /* |
| 68 | ******************************************************************************* |
| 69 | ** Declare any Cygwin-specific Win32 or other APIs here. Functions declared in |
| 70 | ** this section should use the built-in ANSI C types in order to make sure this |
| 71 | ** header file continues to work as a self-contained unit. |
| 72 | ** |
| 73 | ** On Cygwin64, "long" is 64-bit but in Win64 it's 32-bit. That's why in |
| 74 | ** the signatures below "long" should not be used. Use "int" in stead. |
| 75 | ******************************************************************************* |
| 76 | */ |
| 77 | |
| 78 | WINADVAPI extern WINAPI int RegOpenKeyExW( |
| 79 | void *, /* HKEY */ |
| 80 | const wchar_t *, /* LPCWSTR */ |
| 81 | unsigned int, /* DWORD */ |
| 82 | unsigned int, /* REGSAM */ |
| 83 | void * /* PHKEY */ |
| 84 | ); |
| 85 | |
| 86 | WINADVAPI extern WINAPI int RegQueryValueExW( |
| 87 | void *, /* HKEY */ |
| 88 | const wchar_t *, /* LPCWSTR */ |
| 89 | unsigned int *, /* LPDWORD */ |
| 90 | unsigned int *, /* LPDWORD */ |
| 91 | unsigned char *, /* LPBYTE */ |
| 92 | unsigned int * /* LPDWORD */ |
| 93 | ); |
| 94 | |
| 95 | SHSTDAPI extern STDAPI void *ShellExecuteW( |
| 96 | void *, /* HWND */ |
| 97 | const wchar_t *, /* LPCWSTR */ |
| @@ -98,11 +101,11 @@ | |
| 101 | int /* INT */ |
| 102 | ); |
| 103 | |
| 104 | WINBASEAPI extern WINAPI int WideCharToMultiByte( |
| 105 | unsigned int, /* UINT */ |
| 106 | unsigned int, /* DWORD */ |
| 107 | const wchar_t *, /* LPCWSTR */ |
| 108 | int, /* int */ |
| 109 | char *, /* LPSTR */ |
| 110 | int, /* int */ |
| 111 | const char *, /* LPCSTR */ |
| @@ -109,13 +112,13 @@ | |
| 112 | int * /* LPBOOL */ |
| 113 | ); |
| 114 | |
| 115 | WINBASEAPI extern WINAPI int MultiByteToWideChar( |
| 116 | unsigned int, /* UINT */ |
| 117 | unsigned int, /* DWORD */ |
| 118 | const char *, /* LPCSTR */ |
| 119 | int, /* int */ |
| 120 | wchar_t *, /* LPWSTR */ |
| 121 | int /* int */ |
| 122 | ); |
| 123 | |
| 124 | #endif /* defined(__CYGWIN__) && !defined(CYGSUP_H) */ |
| 125 |