mirror of https://github.com/encounter/SDL.git
Fixed bug 2556 - add compilation flag -Wshadow
Sylvain here's the full patch for Blit + RLE.
This commit is contained in:
parent
6a632eb23c
commit
afe14829b8
|
@ -23374,7 +23374,7 @@ $as_echo "#define SDL_FILESYSTEM_NACL 1" >>confdefs.h
|
||||||
esac
|
esac
|
||||||
|
|
||||||
CheckWarnAll
|
CheckWarnAll
|
||||||
#CheckWarnShadow
|
CheckWarnShadow
|
||||||
|
|
||||||
# Verify that we have all the platform specific files we need
|
# Verify that we have all the platform specific files we need
|
||||||
|
|
||||||
|
|
|
@ -3238,7 +3238,7 @@ esac
|
||||||
|
|
||||||
dnl Do this on all platforms, after everything else.
|
dnl Do this on all platforms, after everything else.
|
||||||
CheckWarnAll
|
CheckWarnAll
|
||||||
#CheckWarnShadow
|
CheckWarnShadow
|
||||||
|
|
||||||
# Verify that we have all the platform specific files we need
|
# Verify that we have all the platform specific files we need
|
||||||
|
|
||||||
|
|
|
@ -442,10 +442,10 @@ SDL_DetachThread(SDL_Thread * thread)
|
||||||
SDL_SYS_DetachThread(thread);
|
SDL_SYS_DetachThread(thread);
|
||||||
} else {
|
} else {
|
||||||
/* all other states are pretty final, see where we landed. */
|
/* all other states are pretty final, see where we landed. */
|
||||||
const int state = SDL_AtomicGet(&thread->state);
|
const int thread_state = SDL_AtomicGet(&thread->state);
|
||||||
if ((state == SDL_THREAD_STATE_DETACHED) || (state == SDL_THREAD_STATE_CLEANED)) {
|
if ((thread_state == SDL_THREAD_STATE_DETACHED) || (thread_state == SDL_THREAD_STATE_CLEANED)) {
|
||||||
return; /* already detached (you shouldn't call this twice!) */
|
return; /* already detached (you shouldn't call this twice!) */
|
||||||
} else if (state == SDL_THREAD_STATE_ZOMBIE) {
|
} else if (thread_state == SDL_THREAD_STATE_ZOMBIE) {
|
||||||
SDL_WaitThread(thread, NULL); /* already done, clean it up. */
|
SDL_WaitThread(thread, NULL); /* already done, clean it up. */
|
||||||
} else {
|
} else {
|
||||||
SDL_assert(0 && "Unexpected thread state");
|
SDL_assert(0 && "Unexpected thread state");
|
||||||
|
|
|
@ -376,10 +376,10 @@
|
||||||
* right. Top clipping has already been taken care of.
|
* right. Top clipping has already been taken care of.
|
||||||
*/
|
*/
|
||||||
static void
|
static void
|
||||||
RLEClipBlit(int w, Uint8 * srcbuf, SDL_Surface * dst,
|
RLEClipBlit(int w, Uint8 * srcbuf, SDL_Surface * surf_dst,
|
||||||
Uint8 * dstbuf, SDL_Rect * srcrect, unsigned alpha)
|
Uint8 * dstbuf, SDL_Rect * srcrect, unsigned alpha)
|
||||||
{
|
{
|
||||||
SDL_PixelFormat *fmt = dst->format;
|
SDL_PixelFormat *fmt = surf_dst->format;
|
||||||
|
|
||||||
#define RLECLIPBLIT(bpp, Type, do_blit) \
|
#define RLECLIPBLIT(bpp, Type, do_blit) \
|
||||||
do { \
|
do { \
|
||||||
|
@ -418,7 +418,7 @@ RLEClipBlit(int w, Uint8 * srcbuf, SDL_Surface * dst,
|
||||||
break; \
|
break; \
|
||||||
if(ofs == w) { \
|
if(ofs == w) { \
|
||||||
ofs = 0; \
|
ofs = 0; \
|
||||||
dstbuf += dst->pitch; \
|
dstbuf += surf_dst->pitch; \
|
||||||
if(!--linecount) \
|
if(!--linecount) \
|
||||||
break; \
|
break; \
|
||||||
} \
|
} \
|
||||||
|
@ -434,18 +434,18 @@ RLEClipBlit(int w, Uint8 * srcbuf, SDL_Surface * dst,
|
||||||
|
|
||||||
/* blit a colorkeyed RLE surface */
|
/* blit a colorkeyed RLE surface */
|
||||||
int
|
int
|
||||||
SDL_RLEBlit(SDL_Surface * src, SDL_Rect * srcrect,
|
SDL_RLEBlit(SDL_Surface * surf_src, SDL_Rect * srcrect,
|
||||||
SDL_Surface * dst, SDL_Rect * dstrect)
|
SDL_Surface * surf_dst, SDL_Rect * dstrect)
|
||||||
{
|
{
|
||||||
Uint8 *dstbuf;
|
Uint8 *dstbuf;
|
||||||
Uint8 *srcbuf;
|
Uint8 *srcbuf;
|
||||||
int x, y;
|
int x, y;
|
||||||
int w = src->w;
|
int w = surf_src->w;
|
||||||
unsigned alpha;
|
unsigned alpha;
|
||||||
|
|
||||||
/* Lock the destination if necessary */
|
/* Lock the destination if necessary */
|
||||||
if (SDL_MUSTLOCK(dst)) {
|
if (SDL_MUSTLOCK(surf_dst)) {
|
||||||
if (SDL_LockSurface(dst) < 0) {
|
if (SDL_LockSurface(surf_dst) < 0) {
|
||||||
return (-1);
|
return (-1);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -453,9 +453,9 @@ SDL_RLEBlit(SDL_Surface * src, SDL_Rect * srcrect,
|
||||||
/* Set up the source and destination pointers */
|
/* Set up the source and destination pointers */
|
||||||
x = dstrect->x;
|
x = dstrect->x;
|
||||||
y = dstrect->y;
|
y = dstrect->y;
|
||||||
dstbuf = (Uint8 *) dst->pixels
|
dstbuf = (Uint8 *) surf_dst->pixels
|
||||||
+ y * dst->pitch + x * src->format->BytesPerPixel;
|
+ y * surf_dst->pitch + x * surf_src->format->BytesPerPixel;
|
||||||
srcbuf = (Uint8 *) src->map->data;
|
srcbuf = (Uint8 *) surf_src->map->data;
|
||||||
|
|
||||||
{
|
{
|
||||||
/* skip lines at the top if necessary */
|
/* skip lines at the top if necessary */
|
||||||
|
@ -481,7 +481,7 @@ SDL_RLEBlit(SDL_Surface * src, SDL_Rect * srcrect,
|
||||||
} \
|
} \
|
||||||
}
|
}
|
||||||
|
|
||||||
switch (src->format->BytesPerPixel) {
|
switch (surf_src->format->BytesPerPixel) {
|
||||||
case 1:
|
case 1:
|
||||||
RLESKIP(1, Uint8);
|
RLESKIP(1, Uint8);
|
||||||
break;
|
break;
|
||||||
|
@ -501,12 +501,12 @@ SDL_RLEBlit(SDL_Surface * src, SDL_Rect * srcrect,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
alpha = src->map->info.a;
|
alpha = surf_src->map->info.a;
|
||||||
/* if left or right edge clipping needed, call clip blit */
|
/* if left or right edge clipping needed, call clip blit */
|
||||||
if (srcrect->x || srcrect->w != src->w) {
|
if (srcrect->x || srcrect->w != surf_src->w) {
|
||||||
RLEClipBlit(w, srcbuf, dst, dstbuf, srcrect, alpha);
|
RLEClipBlit(w, srcbuf, surf_dst, dstbuf, srcrect, alpha);
|
||||||
} else {
|
} else {
|
||||||
SDL_PixelFormat *fmt = src->format;
|
SDL_PixelFormat *fmt = surf_src->format;
|
||||||
|
|
||||||
#define RLEBLIT(bpp, Type, do_blit) \
|
#define RLEBLIT(bpp, Type, do_blit) \
|
||||||
do { \
|
do { \
|
||||||
|
@ -525,7 +525,7 @@ SDL_RLEBlit(SDL_Surface * src, SDL_Rect * srcrect,
|
||||||
break; \
|
break; \
|
||||||
if(ofs == w) { \
|
if(ofs == w) { \
|
||||||
ofs = 0; \
|
ofs = 0; \
|
||||||
dstbuf += dst->pitch; \
|
dstbuf += surf_dst->pitch; \
|
||||||
if(!--linecount) \
|
if(!--linecount) \
|
||||||
break; \
|
break; \
|
||||||
} \
|
} \
|
||||||
|
@ -539,8 +539,8 @@ SDL_RLEBlit(SDL_Surface * src, SDL_Rect * srcrect,
|
||||||
|
|
||||||
done:
|
done:
|
||||||
/* Unlock the destination if necessary */
|
/* Unlock the destination if necessary */
|
||||||
if (SDL_MUSTLOCK(dst)) {
|
if (SDL_MUSTLOCK(surf_dst)) {
|
||||||
SDL_UnlockSurface(dst);
|
SDL_UnlockSurface(surf_dst);
|
||||||
}
|
}
|
||||||
return (0);
|
return (0);
|
||||||
}
|
}
|
||||||
|
@ -620,10 +620,10 @@ typedef struct
|
||||||
|
|
||||||
/* blit a pixel-alpha RLE surface clipped at the right and/or left edges */
|
/* blit a pixel-alpha RLE surface clipped at the right and/or left edges */
|
||||||
static void
|
static void
|
||||||
RLEAlphaClipBlit(int w, Uint8 * srcbuf, SDL_Surface * dst,
|
RLEAlphaClipBlit(int w, Uint8 * srcbuf, SDL_Surface * surf_dst,
|
||||||
Uint8 * dstbuf, SDL_Rect * srcrect)
|
Uint8 * dstbuf, SDL_Rect * srcrect)
|
||||||
{
|
{
|
||||||
SDL_PixelFormat *df = dst->format;
|
SDL_PixelFormat *df = surf_dst->format;
|
||||||
/*
|
/*
|
||||||
* clipped blitter: Ptype is the destination pixel type,
|
* clipped blitter: Ptype is the destination pixel type,
|
||||||
* Ctype the translucent count type, and do_blend the macro
|
* Ctype the translucent count type, and do_blend the macro
|
||||||
|
@ -693,7 +693,7 @@ RLEAlphaClipBlit(int w, Uint8 * srcbuf, SDL_Surface * dst,
|
||||||
ofs += run; \
|
ofs += run; \
|
||||||
} \
|
} \
|
||||||
} while(ofs < w); \
|
} while(ofs < w); \
|
||||||
dstbuf += dst->pitch; \
|
dstbuf += surf_dst->pitch; \
|
||||||
} while(--linecount); \
|
} while(--linecount); \
|
||||||
} while(0)
|
} while(0)
|
||||||
|
|
||||||
|
@ -712,25 +712,25 @@ RLEAlphaClipBlit(int w, Uint8 * srcbuf, SDL_Surface * dst,
|
||||||
|
|
||||||
/* blit a pixel-alpha RLE surface */
|
/* blit a pixel-alpha RLE surface */
|
||||||
int
|
int
|
||||||
SDL_RLEAlphaBlit(SDL_Surface * src, SDL_Rect * srcrect,
|
SDL_RLEAlphaBlit(SDL_Surface * surf_src, SDL_Rect * srcrect,
|
||||||
SDL_Surface * dst, SDL_Rect * dstrect)
|
SDL_Surface * surf_dst, SDL_Rect * dstrect)
|
||||||
{
|
{
|
||||||
int x, y;
|
int x, y;
|
||||||
int w = src->w;
|
int w = surf_src->w;
|
||||||
Uint8 *srcbuf, *dstbuf;
|
Uint8 *srcbuf, *dstbuf;
|
||||||
SDL_PixelFormat *df = dst->format;
|
SDL_PixelFormat *df = surf_dst->format;
|
||||||
|
|
||||||
/* Lock the destination if necessary */
|
/* Lock the destination if necessary */
|
||||||
if (SDL_MUSTLOCK(dst)) {
|
if (SDL_MUSTLOCK(surf_dst)) {
|
||||||
if (SDL_LockSurface(dst) < 0) {
|
if (SDL_LockSurface(surf_dst) < 0) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
x = dstrect->x;
|
x = dstrect->x;
|
||||||
y = dstrect->y;
|
y = dstrect->y;
|
||||||
dstbuf = (Uint8 *) dst->pixels + y * dst->pitch + x * df->BytesPerPixel;
|
dstbuf = (Uint8 *) surf_dst->pixels + y * surf_dst->pitch + x * df->BytesPerPixel;
|
||||||
srcbuf = (Uint8 *) src->map->data + sizeof(RLEDestFormat);
|
srcbuf = (Uint8 *) surf_src->map->data + sizeof(RLEDestFormat);
|
||||||
|
|
||||||
{
|
{
|
||||||
/* skip lines at the top if necessary */
|
/* skip lines at the top if necessary */
|
||||||
|
@ -789,8 +789,8 @@ SDL_RLEAlphaBlit(SDL_Surface * src, SDL_Rect * srcrect,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* if left or right edge clipping needed, call clip blit */
|
/* if left or right edge clipping needed, call clip blit */
|
||||||
if (srcrect->x || srcrect->w != src->w) {
|
if (srcrect->x || srcrect->w != surf_src->w) {
|
||||||
RLEAlphaClipBlit(w, srcbuf, dst, dstbuf, srcrect);
|
RLEAlphaClipBlit(w, srcbuf, surf_dst, dstbuf, srcrect);
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -839,7 +839,7 @@ SDL_RLEAlphaBlit(SDL_Surface * src, SDL_Rect * srcrect,
|
||||||
ofs += run; \
|
ofs += run; \
|
||||||
} \
|
} \
|
||||||
} while(ofs < w); \
|
} while(ofs < w); \
|
||||||
dstbuf += dst->pitch; \
|
dstbuf += surf_dst->pitch; \
|
||||||
} while(--linecount); \
|
} while(--linecount); \
|
||||||
} while(0)
|
} while(0)
|
||||||
|
|
||||||
|
@ -859,8 +859,8 @@ SDL_RLEAlphaBlit(SDL_Surface * src, SDL_Rect * srcrect,
|
||||||
|
|
||||||
done:
|
done:
|
||||||
/* Unlock the destination if necessary */
|
/* Unlock the destination if necessary */
|
||||||
if (SDL_MUSTLOCK(dst)) {
|
if (SDL_MUSTLOCK(surf_dst)) {
|
||||||
SDL_UnlockSurface(dst);
|
SDL_UnlockSurface(surf_dst);
|
||||||
}
|
}
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
|
@ -402,18 +402,18 @@ do { \
|
||||||
{ \
|
{ \
|
||||||
switch (bpp) { \
|
switch (bpp) { \
|
||||||
case 1: { \
|
case 1: { \
|
||||||
Uint8 Pixel; \
|
Uint8 _pixel; \
|
||||||
\
|
\
|
||||||
PIXEL_FROM_RGBA(Pixel, fmt, r, g, b, a); \
|
PIXEL_FROM_RGBA(_pixel, fmt, r, g, b, a); \
|
||||||
*((Uint8 *)(buf)) = Pixel; \
|
*((Uint8 *)(buf)) = _pixel; \
|
||||||
} \
|
} \
|
||||||
break; \
|
break; \
|
||||||
\
|
\
|
||||||
case 2: { \
|
case 2: { \
|
||||||
Uint16 Pixel; \
|
Uint16 _pixel; \
|
||||||
\
|
\
|
||||||
PIXEL_FROM_RGBA(Pixel, fmt, r, g, b, a); \
|
PIXEL_FROM_RGBA(_pixel, fmt, r, g, b, a); \
|
||||||
*((Uint16 *)(buf)) = Pixel; \
|
*((Uint16 *)(buf)) = _pixel; \
|
||||||
} \
|
} \
|
||||||
break; \
|
break; \
|
||||||
\
|
\
|
||||||
|
@ -431,10 +431,10 @@ do { \
|
||||||
break; \
|
break; \
|
||||||
\
|
\
|
||||||
case 4: { \
|
case 4: { \
|
||||||
Uint32 Pixel; \
|
Uint32 _pixel; \
|
||||||
\
|
\
|
||||||
PIXEL_FROM_RGBA(Pixel, fmt, r, g, b, a); \
|
PIXEL_FROM_RGBA(_pixel, fmt, r, g, b, a); \
|
||||||
*((Uint32 *)(buf)) = Pixel; \
|
*((Uint32 *)(buf)) = _pixel; \
|
||||||
} \
|
} \
|
||||||
break; \
|
break; \
|
||||||
} \
|
} \
|
||||||
|
|
|
@ -232,16 +232,13 @@ ShouldUseTextureFramebuffer()
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
SDL_CreateWindowTexture(_THIS, SDL_Window * window, Uint32 * format, void ** pixels, int *pitch)
|
SDL_CreateWindowTexture(SDL_VideoDevice *unused, SDL_Window * window, Uint32 * format, void ** pixels, int *pitch)
|
||||||
{
|
{
|
||||||
SDL_WindowTextureData *data;
|
SDL_WindowTextureData *data;
|
||||||
SDL_RendererInfo info;
|
|
||||||
Uint32 i;
|
|
||||||
|
|
||||||
data = SDL_GetWindowData(window, SDL_WINDOWTEXTUREDATA);
|
data = SDL_GetWindowData(window, SDL_WINDOWTEXTUREDATA);
|
||||||
if (!data) {
|
if (!data) {
|
||||||
SDL_Renderer *renderer = NULL;
|
SDL_Renderer *renderer = NULL;
|
||||||
SDL_RendererInfo info;
|
|
||||||
int i;
|
int i;
|
||||||
const char *hint = SDL_GetHint(SDL_HINT_FRAMEBUFFER_ACCELERATION);
|
const char *hint = SDL_GetHint(SDL_HINT_FRAMEBUFFER_ACCELERATION);
|
||||||
|
|
||||||
|
@ -249,6 +246,7 @@ SDL_CreateWindowTexture(_THIS, SDL_Window * window, Uint32 * format, void ** pix
|
||||||
if (hint && *hint != '0' && *hint != '1' &&
|
if (hint && *hint != '0' && *hint != '1' &&
|
||||||
SDL_strcasecmp(hint, "software") != 0) {
|
SDL_strcasecmp(hint, "software") != 0) {
|
||||||
for (i = 0; i < SDL_GetNumRenderDrivers(); ++i) {
|
for (i = 0; i < SDL_GetNumRenderDrivers(); ++i) {
|
||||||
|
SDL_RendererInfo info;
|
||||||
SDL_GetRenderDriverInfo(i, &info);
|
SDL_GetRenderDriverInfo(i, &info);
|
||||||
if (SDL_strcasecmp(info.name, hint) == 0) {
|
if (SDL_strcasecmp(info.name, hint) == 0) {
|
||||||
renderer = SDL_CreateRenderer(window, i, 0);
|
renderer = SDL_CreateRenderer(window, i, 0);
|
||||||
|
@ -259,6 +257,7 @@ SDL_CreateWindowTexture(_THIS, SDL_Window * window, Uint32 * format, void ** pix
|
||||||
|
|
||||||
if (!renderer) {
|
if (!renderer) {
|
||||||
for (i = 0; i < SDL_GetNumRenderDrivers(); ++i) {
|
for (i = 0; i < SDL_GetNumRenderDrivers(); ++i) {
|
||||||
|
SDL_RendererInfo info;
|
||||||
SDL_GetRenderDriverInfo(i, &info);
|
SDL_GetRenderDriverInfo(i, &info);
|
||||||
if (SDL_strcmp(info.name, "software") != 0) {
|
if (SDL_strcmp(info.name, "software") != 0) {
|
||||||
renderer = SDL_CreateRenderer(window, i, 0);
|
renderer = SDL_CreateRenderer(window, i, 0);
|
||||||
|
@ -291,12 +290,17 @@ SDL_CreateWindowTexture(_THIS, SDL_Window * window, Uint32 * format, void ** pix
|
||||||
SDL_free(data->pixels);
|
SDL_free(data->pixels);
|
||||||
data->pixels = NULL;
|
data->pixels = NULL;
|
||||||
|
|
||||||
|
{
|
||||||
|
SDL_RendererInfo info;
|
||||||
|
Uint32 i;
|
||||||
|
|
||||||
if (SDL_GetRendererInfo(data->renderer, &info) < 0) {
|
if (SDL_GetRendererInfo(data->renderer, &info) < 0) {
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Find the first format without an alpha channel */
|
/* Find the first format without an alpha channel */
|
||||||
*format = info.texture_formats[0];
|
*format = info.texture_formats[0];
|
||||||
|
|
||||||
for (i = 0; i < info.num_texture_formats; ++i) {
|
for (i = 0; i < info.num_texture_formats; ++i) {
|
||||||
if (!SDL_ISPIXELFORMAT_FOURCC(info.texture_formats[i]) &&
|
if (!SDL_ISPIXELFORMAT_FOURCC(info.texture_formats[i]) &&
|
||||||
!SDL_ISPIXELFORMAT_ALPHA(info.texture_formats[i])) {
|
!SDL_ISPIXELFORMAT_ALPHA(info.texture_formats[i])) {
|
||||||
|
@ -304,6 +308,7 @@ SDL_CreateWindowTexture(_THIS, SDL_Window * window, Uint32 * format, void ** pix
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
data->texture = SDL_CreateTexture(data->renderer, *format,
|
data->texture = SDL_CreateTexture(data->renderer, *format,
|
||||||
SDL_TEXTUREACCESS_STREAMING,
|
SDL_TEXTUREACCESS_STREAMING,
|
||||||
|
@ -330,7 +335,7 @@ SDL_CreateWindowTexture(_THIS, SDL_Window * window, Uint32 * format, void ** pix
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
SDL_UpdateWindowTexture(_THIS, SDL_Window * window, const SDL_Rect * rects, int numrects)
|
SDL_UpdateWindowTexture(SDL_VideoDevice *unused, SDL_Window * window, const SDL_Rect * rects, int numrects)
|
||||||
{
|
{
|
||||||
SDL_WindowTextureData *data;
|
SDL_WindowTextureData *data;
|
||||||
SDL_Rect rect;
|
SDL_Rect rect;
|
||||||
|
@ -360,7 +365,7 @@ SDL_UpdateWindowTexture(_THIS, SDL_Window * window, const SDL_Rect * rects, int
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
SDL_DestroyWindowTexture(_THIS, SDL_Window * window)
|
SDL_DestroyWindowTexture(SDL_VideoDevice *unused, SDL_Window * window)
|
||||||
{
|
{
|
||||||
SDL_WindowTextureData *data;
|
SDL_WindowTextureData *data;
|
||||||
|
|
||||||
|
|
|
@ -674,7 +674,6 @@ X11_GetDisplayModes(_THIS, SDL_VideoDisplay * sdl_display)
|
||||||
int screen_w;
|
int screen_w;
|
||||||
int screen_h;
|
int screen_h;
|
||||||
SDL_DisplayMode mode;
|
SDL_DisplayMode mode;
|
||||||
SDL_DisplayModeData *modedata;
|
|
||||||
|
|
||||||
/* Unfortunately X11 requires the window to be created with the correct
|
/* Unfortunately X11 requires the window to be created with the correct
|
||||||
* visual and depth ahead of time, but the SDL API allows you to create
|
* visual and depth ahead of time, but the SDL API allows you to create
|
||||||
|
@ -692,6 +691,7 @@ X11_GetDisplayModes(_THIS, SDL_VideoDisplay * sdl_display)
|
||||||
if (data->use_xinerama) {
|
if (data->use_xinerama) {
|
||||||
if (data->use_vidmode && !data->xinerama_info.x_org && !data->xinerama_info.y_org &&
|
if (data->use_vidmode && !data->xinerama_info.x_org && !data->xinerama_info.y_org &&
|
||||||
(screen_w > data->xinerama_info.width || screen_h > data->xinerama_info.height)) {
|
(screen_w > data->xinerama_info.width || screen_h > data->xinerama_info.height)) {
|
||||||
|
SDL_DisplayModeData *modedata;
|
||||||
/* Add the full (both screens combined) xinerama mode only on the display that starts at 0,0
|
/* Add the full (both screens combined) xinerama mode only on the display that starts at 0,0
|
||||||
* if we're using vidmode.
|
* if we're using vidmode.
|
||||||
*/
|
*/
|
||||||
|
@ -707,6 +707,7 @@ X11_GetDisplayModes(_THIS, SDL_VideoDisplay * sdl_display)
|
||||||
}
|
}
|
||||||
else if (!data->use_xrandr)
|
else if (!data->use_xrandr)
|
||||||
{
|
{
|
||||||
|
SDL_DisplayModeData *modedata;
|
||||||
/* Add the current mode of each monitor otherwise if we can't get them from xrandr */
|
/* Add the current mode of each monitor otherwise if we can't get them from xrandr */
|
||||||
mode.w = data->xinerama_info.width;
|
mode.w = data->xinerama_info.width;
|
||||||
mode.h = data->xinerama_info.height;
|
mode.h = data->xinerama_info.height;
|
||||||
|
@ -759,6 +760,7 @@ X11_GetDisplayModes(_THIS, SDL_VideoDisplay * sdl_display)
|
||||||
if (data->use_vidmode &&
|
if (data->use_vidmode &&
|
||||||
X11_XF86VidModeGetAllModeLines(display, data->vidmode_screen, &nmodes, &modes)) {
|
X11_XF86VidModeGetAllModeLines(display, data->vidmode_screen, &nmodes, &modes)) {
|
||||||
int i;
|
int i;
|
||||||
|
SDL_DisplayModeData *modedata;
|
||||||
|
|
||||||
#ifdef X11MODES_DEBUG
|
#ifdef X11MODES_DEBUG
|
||||||
printf("VidMode modes: (unsorted)\n");
|
printf("VidMode modes: (unsorted)\n");
|
||||||
|
@ -787,6 +789,7 @@ X11_GetDisplayModes(_THIS, SDL_VideoDisplay * sdl_display)
|
||||||
#endif /* SDL_VIDEO_DRIVER_X11_XVIDMODE */
|
#endif /* SDL_VIDEO_DRIVER_X11_XVIDMODE */
|
||||||
|
|
||||||
if (!data->use_xrandr && !data->use_vidmode) {
|
if (!data->use_xrandr && !data->use_vidmode) {
|
||||||
|
SDL_DisplayModeData *modedata;
|
||||||
/* Add the desktop mode */
|
/* Add the desktop mode */
|
||||||
mode = sdl_display->desktop_mode;
|
mode = sdl_display->desktop_mode;
|
||||||
modedata = (SDL_DisplayModeData *) SDL_calloc(1, sizeof(SDL_DisplayModeData));
|
modedata = (SDL_DisplayModeData *) SDL_calloc(1, sizeof(SDL_DisplayModeData));
|
||||||
|
|
|
@ -548,7 +548,6 @@ yesno (int v)
|
||||||
void
|
void
|
||||||
dump_monitor_info (MonitorInfo *info)
|
dump_monitor_info (MonitorInfo *info)
|
||||||
{
|
{
|
||||||
char *s;
|
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
printf ("Checksum: %d (%s)\n",
|
printf ("Checksum: %d (%s)\n",
|
||||||
|
@ -601,6 +600,7 @@ dump_monitor_info (MonitorInfo *info)
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
|
const char *s;
|
||||||
printf ("Video Signal Level: %f\n", info->analog.video_signal_level);
|
printf ("Video Signal Level: %f\n", info->analog.video_signal_level);
|
||||||
printf ("Sync Signal Level: %f\n", info->analog.sync_signal_level);
|
printf ("Sync Signal Level: %f\n", info->analog.sync_signal_level);
|
||||||
printf ("Total Signal Level: %f\n", info->analog.total_signal_level);
|
printf ("Total Signal Level: %f\n", info->analog.total_signal_level);
|
||||||
|
|
Loading…
Reference in New Issue