)
{
int mode;
- int len;
+ size_t len;
if(!_stricmp(str, "SATA600"))
return ATA_SA600;
)
{
//ULONG Flags = 0;
- int i, j;
+ int i;
+ uintptr_t j;
char a;
int bus_id = -1;
int dev_id = -1;
switch(uMsg) {
case WM_INITDIALOG:
hTextBox = GetDlgItem(hwndDialog, ID_LINENUMBER);
- _sntprintf(szText, ARRAY_SIZE(szText), _T("%ld"), lParam);
+ _sntprintf(szText, ARRAY_SIZE(szText), _T("%Id"), lParam);
SetWindowText(hTextBox, szText);
break;
case WM_COMMAND:
ENCODING_UTF16BE = 2,
ENCODING_UTF8 = 3
} ENCODING;
-// #define ENCODING_ANSI 0
-#define ENCODING_UNICODE 1
-#define ENCODING_UNICODE_BE 2
-// #define ENCODING_UTF8 3
// #define MIN_ENCODING 0
// #define MAX_ENCODING 3
/* Look for Byte Order Marks */
if ((dwSize >= 2) && (pBytes[0] == 0xFF) && (pBytes[1] == 0xFE))
{
- encFile = ENCODING_UNICODE;
+ encFile = ENCODING_UTF16LE;
dwPos += 2;
}
else if ((dwSize >= 2) && (pBytes[0] == 0xFE) && (pBytes[1] == 0xFF))
{
- encFile = ENCODING_UNICODE_BE;
+ encFile = ENCODING_UTF16BE;
dwPos += 2;
}
else if ((dwSize >= 3) && (pBytes[0] == 0xEF) && (pBytes[1] == 0xBB) && (pBytes[2] == 0xBF))
switch(encFile)
{
- case ENCODING_UNICODE_BE:
+ case ENCODING_UTF16BE:
for (i = dwPos; i < dwSize-1; i += 2)
{
b = pBytes[i+0];
}
/* fall through */
- case ENCODING_UNICODE:
+ case ENCODING_UTF16LE:
pszText = (LPWSTR) &pBytes[dwPos];
dwCharCount = (dwSize - dwPos) / sizeof(WCHAR);
break;
{
switch(encFile)
{
- case ENCODING_UNICODE:
+ case ENCODING_UTF16LE:
pBytes = (LPBYTE) &pszText[dwPos];
dwByteCount = (dwTextLen - dwPos) * sizeof(WCHAR);
dwPos = dwTextLen;
break;
- case ENCODING_UNICODE_BE:
+ case ENCODING_UTF16BE:
dwByteCount = (dwTextLen - dwPos) * sizeof(WCHAR);
if (dwByteCount > sizeof(buffer))
dwByteCount = sizeof(buffer);
#define PtrToPfn(p) \
((((ULONGLONG)p) >> PAGE_SHIFT) & 0xfffffffULL)
-#define VAtoPXI(va) ((((ULONG64)va) >> PXI_SHIFT) & 0x1FF)
-#define VAtoPPI(va) ((((ULONG64)va) >> PPI_SHIFT) & 0x1FF)
-#define VAtoPDI(va) ((((ULONG64)va) >> PDI_SHIFT) & 0x1FF)
-#define VAtoPTI(va) ((((ULONG64)va) >> PTI_SHIFT) & 0x1FF)
+#define VAtoPXI(va) ((((ULONG64)(va)) >> PXI_SHIFT) & 0x1FF)
+#define VAtoPPI(va) ((((ULONG64)(va)) >> PPI_SHIFT) & 0x1FF)
+#define VAtoPDI(va) ((((ULONG64)(va)) >> PDI_SHIFT) & 0x1FF)
+#define VAtoPTI(va) ((((ULONG64)(va)) >> PTI_SHIFT) & 0x1FF)
#ifndef ASM
TRACE("Volume_FindDefaultMixerID\n");
- result = waveOutMessage((HWAVEOUT)WAVE_MAPPER, DRVM_MAPPER_PREFERRED_GET, (DWORD_PTR)&waveOutId, (DWORD_PTR)¶m2);
+ result = waveOutMessage((HWAVEOUT)UlongToHandle(WAVE_MAPPER), DRVM_MAPPER_PREFERRED_GET, (DWORD_PTR)&waveOutId, (DWORD_PTR)¶m2);
if (result)
return E_FAIL;
{
TRACE("waveOut default device is %d\n", waveOutId);
- result = mixerGetID((HMIXEROBJ)waveOutId, &mixerId, MIXER_OBJECTF_WAVEOUT);
+ result = mixerGetID((HMIXEROBJ)UlongToHandle(waveOutId), &mixerId, MIXER_OBJECTF_WAVEOUT);
if (result)
return E_FAIL;
{
mixerLine.cbStruct = sizeof(mixerLine);
mixerLine.dwDestination = idx;
- if (!mixerGetLineInfoW((HMIXEROBJ)g_mixerId, &mixerLine, 0))
+ if (!mixerGetLineInfoW((HMIXEROBJ)UlongToHandle(g_mixerId), &mixerLine, 0))
{
if (mixerLine.dwComponentType >= MIXERLINE_COMPONENTTYPE_DST_SPEAKERS &&
mixerLine.dwComponentType <= MIXERLINE_COMPONENTTYPE_DST_HEADPHONES)
mixerLineControls.pamxctrl = &mixerControl;
mixerLineControls.cbmxctrl = sizeof(mixerControl);
- if (mixerGetLineControlsW((HMIXEROBJ)g_mixerId, &mixerLineControls, MIXER_GETLINECONTROLSF_ONEBYTYPE))
+ if (mixerGetLineControlsW((HMIXEROBJ)UlongToHandle(g_mixerId), &mixerLineControls, MIXER_GETLINECONTROLSF_ONEBYTYPE))
return E_FAIL;
TRACE("Found control id %d for mute: %d\n", mixerControl.dwControlID);
WriteFile(IN HANDLE hFile,
IN LPCVOID lpBuffer,
IN DWORD nNumberOfBytesToWrite OPTIONAL,
- OUT LPDWORD lpNumberOfBytesWritten OPTIONAL,
+ OUT LPDWORD lpNumberOfBytesWritten,
IN LPOVERLAPPED lpOverlapped OPTIONAL)
{
NTSTATUS Status;
else
{
// HKeyRoot
- Value = DWORD(HKEY_CURRENT_USER);
- Size = sizeof(Value);
- RegQueryValueExW(hKey, L"HKeyRoot", NULL, NULL, LPBYTE(&Value), &Size);
- pEntry->hkeyRoot = HKEY(Value);
+ HKEY HKeyRoot = HKEY_CURRENT_USER;
+ Size = sizeof(HKeyRoot);
+ RegQueryValueExW(hKey, L"HKeyRoot", NULL, NULL, LPBYTE(&HKeyRoot), &Size);
+ pEntry->hkeyRoot = HKeyRoot;
// RegPath
pEntry->szRegPath[0] = 0;
continue;
}
RegSetValueExW(hKey, pEntry->szValueName, 0, REG_DWORD,
- LPBYTE(pEntry->dwDefaultValue), sizeof(DWORD));
+ LPBYTE(&pEntry->dwDefaultValue), sizeof(DWORD));
RegCloseKey(hKey);
// update check status
{
INT ErrorCode;
LPWSAQUERYSETW UnicodeQuerySet = NULL;
- DWORD UnicodeQuerySetSize = 0;
+ SIZE_T UnicodeQuerySetSize = 0;
DPRINT("WSALookupServiceBeginA: %p\n", lpqsRestrictions);
if (ErrorCode == ERROR_SUCCESS)
{
+ SIZE_T SetSize = *lpdwBufferLength;
+
/* Now convert back to ANSI */
ErrorCode = MapUnicodeQuerySetToAnsi(UnicodeQuerySet,
- lpdwBufferLength,
+ &SetSize,
lpqsResults);
if (ErrorCode != ERROR_SUCCESS)
+ {
+ SetLastError(ErrorCode);
+ }
+ else if (SetSize > MAXDWORD)
+ {
+ ErrorCode = ERROR_ARITHMETIC_OVERFLOW;
SetLastError(ErrorCode);
+ }
+ else
+ {
+ *lpdwBufferLength = SetSize;
+ }
}
else
{
#endif
-#ifdef _M_IX86
+#ifndef _WIN64
C_ASSERT(FIELD_OFFSET(KUSER_SHARED_DATA, SystemCall) == 0x300);
C_ASSERT(FIELD_OFFSET(KTHREAD, InitialStack) == KTHREAD_INITIAL_STACK);
typedef HANDLE HLOCAL;
typedef HANDLE GLOBALHANDLE;
typedef HANDLE LOCALHANDLE;
-#ifdef _WIN64
+
typedef INT_PTR (WINAPI *FARPROC)();
typedef INT_PTR (WINAPI *NEARPROC)();
typedef INT_PTR (WINAPI *PROC)();
-#else
-typedef int (WINAPI *FARPROC)();
-typedef int (WINAPI *NEARPROC)();
-typedef int (WINAPI *PROC)();
-#endif
typedef void *HGDIOBJ;
* (by reading outside of the prefetch buffer). The prefetch cache must
* also not cross a page boundary.
*/
-C_ASSERT((FAST486_CACHE_SIZE >= sizeof(DWORD))
+C_ASSERT((FAST486_CACHE_SIZE >= sizeof(ULONG))
&& (FAST486_CACHE_SIZE <= FAST486_PAGE_SIZE));
struct _FAST486_STATE;
#include <stdlib.h>
#include <search.h>
+#define long intptr_t
+
#define min(a, b) (a) < (b) ? (a) : (b)
/*
es % sizeof(long) ? 2 : es == sizeof(long)? 0 : 1;
static __inline void
-swapfunc(char *a, char *b, int n, int swaptype)
+swapfunc(char *a, char *b, intptr_t n, int swaptype)
{
if(swaptype <= 1)
swapcode(long, a, b, n)
qsort(void *a, size_t n, size_t es, int (__cdecl *cmp)(const void*, const void*))
{
char *pa, *pb, *pc, *pd, *pl, *pm, *pn;
- int d, r, swaptype, swap_cnt;
+ int swaptype, swap_cnt;
+ intptr_t d, r;
loop: SWAPINIT(a, es);
swap_cnt = 0;
Fast486MemReadCallback(PFAST486_STATE State, ULONG Address, PVOID Buffer, ULONG Size)
{
UNREFERENCED_PARAMETER(State);
- RtlMoveMemory(Buffer, (PVOID)Address, Size);
+ RtlMoveMemory(Buffer, UlongToPtr(Address), Size);
}
static VOID
Fast486MemWriteCallback(PFAST486_STATE State, ULONG Address, PVOID Buffer, ULONG Size)
{
UNREFERENCED_PARAMETER(State);
- RtlMoveMemory((PVOID)Address, Buffer, Size);
+ RtlMoveMemory(UlongToPtr(Address), Buffer, Size);
}
static VOID
PVOID BaseAddress;
LARGE_INTEGER Offset;
SIZE_T ViewSize;
+#ifdef _M_IX86
CHAR IVTAndBda[1024+256];
+#endif // _M_IX86
/* Free the 1MB pre-reserved region. In reality, ReactOS should simply support us mapping the view into the reserved area, but it doesn't. */
BaseAddress = 0;
return 0;
}
+#ifdef _M_IX86
/* Get the real mode IVT and BDA from the kernel */
Status = NtVdmControl(VdmInitialize, IVTAndBda);
if (!NT_SUCCESS(Status))
DPRINT1("NtVdmControl failed (status %x)\n", Status);
return Status;
}
+#endif // _M_IX86
/* Return success */
return STATUS_SUCCESS;
pEntry = &GdiHandleTable->Entries[i];
Type = pEntry->Type;
- Handle = (HGDIOBJ)(((ULONG_PTR)Type << GDI_ENTRY_UPPER_SHIFT) + i);
+ Handle = (HGDIOBJ)(ULONG_PTR)((Type << GDI_ENTRY_UPPER_SHIFT) + i);
if (Type & GDI_ENTRY_BASETYPE_MASK)
{