diff src/video/windx5/SDL_dx5events.c @ 1456:84de7511f79f

Fixed a bunch of 64-bit compatibility problems
author Sam Lantinga <slouken@libsdl.org>
date Wed, 01 Mar 2006 09:43:47 +0000
parents d910939febfa
children 4aac8563c296
line wrap: on
line diff
--- a/src/video/windx5/SDL_dx5events.c	Mon Feb 27 22:14:40 2006 +0000
+++ b/src/video/windx5/SDL_dx5events.c	Wed Mar 01 09:43:47 2006 +0000
@@ -476,8 +476,7 @@
 }
 
 /* The main Win32 event handler */
-LONG
- DX5_HandleMessage(_THIS, HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
+LRESULT DX5_HandleMessage(_THIS, HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam)
 {
 	switch (msg) {
 #ifdef WM_ACTIVATEAPP
@@ -503,7 +502,7 @@
 
 #ifdef WM_DISPLAYCHANGE
 		case WM_DISPLAYCHANGE: {
-			WORD BitsPerPixel;
+			WPARAM BitsPerPixel;
 			WORD SizeX, SizeY;
 
 			/* Ack!  The display changed size and/or depth! */
@@ -866,7 +865,7 @@
 
 	SDL_windowid = (windowid != NULL);
 	if ( SDL_windowid ) {
-		SDL_Window = (HWND)SDL_strtol(windowid, NULL, 0);
+		SDL_Window = (HWND)SDL_strtoull(windowid, NULL, 0);
 		if ( SDL_Window == NULL ) {
 			SDL_SetError("Couldn't get user specified window");
 			return(-1);
@@ -875,8 +874,8 @@
 		/* DJM: we want all event's for the user specified
 			window to be handled by SDL.
 		 */
-		userWindowProc = (WNDPROCTYPE)GetWindowLong(SDL_Window, GWL_WNDPROC);
-		SetWindowLong(SDL_Window, GWL_WNDPROC, (LONG)WinMessage);
+		userWindowProc = (WNDPROCTYPE)GetWindowLongPtr(SDL_Window, GWL_WNDPROC);
+		SetWindowLongPtr(SDL_Window, GWL_WNDPROC, (LONG_PTR)WinMessage);
 	} else {
 		SDL_Window = CreateWindow(SDL_Appname, SDL_Appname,
                         (WS_OVERLAPPED|WS_CAPTION|WS_SYSMENU|WS_MINIMIZEBOX),
@@ -904,7 +903,7 @@
 
 	/* Destroy our window */
 	if ( SDL_windowid ) {
-		SetWindowLong(SDL_Window, GWL_WNDPROC, (LONG)userWindowProc);
+		SetWindowLongPtr(SDL_Window, GWL_WNDPROC, (LONG_PTR)userWindowProc);
 	} else {
 		DestroyWindow(SDL_Window);
 	}