gallium: WinCE portability fixes.
This commit is contained in:
@@ -36,6 +36,13 @@
|
|||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
#include <winddi.h>
|
#include <winddi.h>
|
||||||
|
|
||||||
|
#elif defined(PIPE_SUBSYSTEM_WINDOWS_CE)
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
#include <stdlib.h>
|
||||||
|
#include <windows.h>
|
||||||
|
#include <types.h>
|
||||||
|
|
||||||
#elif defined(PIPE_SUBSYSTEM_WINDOWS_USER)
|
#elif defined(PIPE_SUBSYSTEM_WINDOWS_USER)
|
||||||
|
|
||||||
#ifndef WIN32_LEAN_AND_MEAN
|
#ifndef WIN32_LEAN_AND_MEAN
|
||||||
@@ -98,7 +105,35 @@ void _debug_vprintf(const char *format, va_list ap)
|
|||||||
OutputDebugStringA(buf);
|
OutputDebugStringA(buf);
|
||||||
buf[0] = '\0';
|
buf[0] = '\0';
|
||||||
}
|
}
|
||||||
#elif defined(PIPE_SUBSYSTEM_WINDOWS_CE) || defined(PIPE_SUBSYSTEM_WINDOWS_MINIPORT)
|
#elif defined(PIPE_SUBSYSTEM_WINDOWS_CE)
|
||||||
|
wchar_t *wide_format;
|
||||||
|
long wide_str_len;
|
||||||
|
char buf[512];
|
||||||
|
int ret;
|
||||||
|
#if (_WIN32_WCE < 600)
|
||||||
|
ret = vsprintf(buf, format, ap);
|
||||||
|
if(ret < 0){
|
||||||
|
sprintf(buf, "Cant handle debug print!");
|
||||||
|
ret = 25;
|
||||||
|
}
|
||||||
|
#else
|
||||||
|
ret = vsprintf_s(buf, 512, format, ap);
|
||||||
|
if(ret < 0){
|
||||||
|
sprintf_s(buf, 512, "Cant handle debug print!");
|
||||||
|
ret = 25;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
buf[ret] = '\0';
|
||||||
|
/* Format is ascii - needs to be converted to wchar_t for printing */
|
||||||
|
wide_str_len = MultiByteToWideChar(CP_ACP, 0, (const char *) buf, -1, NULL, 0);
|
||||||
|
wide_format = (wchar_t *) malloc((wide_str_len+1) * sizeof(wchar_t));
|
||||||
|
if (wide_format) {
|
||||||
|
MultiByteToWideChar(CP_ACP, 0, (const char *) buf, -1,
|
||||||
|
wide_format, wide_str_len);
|
||||||
|
NKDbgPrintfW(wide_format, wide_format);
|
||||||
|
free(wide_format);
|
||||||
|
}
|
||||||
|
#elif defined(PIPE_SUBSYSTEM_WINDOWS_MINIPORT)
|
||||||
/* TODO */
|
/* TODO */
|
||||||
#else /* !PIPE_SUBSYSTEM_WINDOWS */
|
#else /* !PIPE_SUBSYSTEM_WINDOWS */
|
||||||
vfprintf(stderr, format, ap);
|
vfprintf(stderr, format, ap);
|
||||||
@@ -637,6 +672,7 @@ void
|
|||||||
debug_dump_surface_bmp(const char *filename,
|
debug_dump_surface_bmp(const char *filename,
|
||||||
struct pipe_surface *surface)
|
struct pipe_surface *surface)
|
||||||
{
|
{
|
||||||
|
#ifndef PIPE_SUBSYSTEM_WINDOWS_MINIPORT
|
||||||
struct util_stream *stream;
|
struct util_stream *stream;
|
||||||
unsigned surface_usage;
|
unsigned surface_usage;
|
||||||
struct bmp_file_header bmfh;
|
struct bmp_file_header bmfh;
|
||||||
@@ -703,6 +739,7 @@ error2:
|
|||||||
FREE(rgba);
|
FREE(rgba);
|
||||||
error1:
|
error1:
|
||||||
;
|
;
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
@@ -68,7 +68,7 @@ __inline double ceil(double val)
|
|||||||
return ceil_val;
|
return ceil_val;
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef PIPE_SUBSYSTEM_WINDOWS_CE
|
#ifndef PIPE_SUBSYSTEM_WINDOWS_CE_OGL
|
||||||
__inline double floor(double val)
|
__inline double floor(double val)
|
||||||
{
|
{
|
||||||
double floor_val;
|
double floor_val;
|
||||||
|
Reference in New Issue
Block a user