- added thread-safety protection to XListPixmapFormats
- moved pixmap / image format matching ERRs to WARNs
This commit is contained in:
parent
f1a2532129
commit
00d5d77ddc
|
@ -49,7 +49,7 @@ int _common_depth_to_pixelformat(
|
|||
int index = -2;
|
||||
|
||||
vi = TSXGetVisualInfo(display, VisualNoMask, &vt, &nvisuals);
|
||||
pf = XListPixmapFormats(display, &npixmap);
|
||||
pf = TSXListPixmapFormats(display, &npixmap);
|
||||
|
||||
for (i = 0; i < npixmap; i++) {
|
||||
if (pf[i].depth == depth) {
|
||||
|
@ -83,7 +83,7 @@ int _common_depth_to_pixelformat(
|
|||
goto clean_up_and_exit;
|
||||
}
|
||||
}
|
||||
ERR("No visual corresponding to pixmap format !\n");
|
||||
WARN("No visual corresponding to pixmap format !\n");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -694,7 +694,7 @@ static HRESULT WINAPI Xlib_IDirectDraw2Impl_EnumDisplayModes(
|
|||
maxHeight = MONITOR_GetHeight(&MONITOR_PrimaryMonitor);
|
||||
|
||||
vi = TSXGetVisualInfo(display, VisualNoMask, &vt, &nvisuals);
|
||||
pf = XListPixmapFormats(display, &npixmap);
|
||||
pf = TSXListPixmapFormats(display, &npixmap);
|
||||
|
||||
i = 0;
|
||||
emu = 0;
|
||||
|
@ -734,8 +734,8 @@ static HRESULT WINAPI Xlib_IDirectDraw2Impl_EnumDisplayModes(
|
|||
|
||||
has_mode[mode_index] = 1;
|
||||
} else {
|
||||
/* All the 'true color' depths (15, 16 and 24)
|
||||
First, find the corresponding visual to extract the bit masks */
|
||||
/* All the 'true color' depths (15, 16 and 24)
|
||||
First, find the corresponding visual to extract the bit masks */
|
||||
for (j = 0; j < nvisuals; j++) {
|
||||
if (vi[j].depth == pf[i].depth) {
|
||||
ddsfd.ddsCaps.dwCaps = 0;
|
||||
|
@ -756,7 +756,7 @@ static HRESULT WINAPI Xlib_IDirectDraw2Impl_EnumDisplayModes(
|
|||
}
|
||||
}
|
||||
if (j == nvisuals)
|
||||
ERR("Did not find visual corresponding the the pixmap format !\n");
|
||||
WARN("Did not find visual corresponding the the pixmap format !\n");
|
||||
}
|
||||
}
|
||||
i++;
|
||||
|
@ -787,7 +787,7 @@ static HRESULT WINAPI Xlib_IDirectDraw2Impl_EnumDisplayModes(
|
|||
ddsfd.ddpfPixelFormat.u1.dwRBitMask = 0;
|
||||
ddsfd.ddpfPixelFormat.u2.dwGBitMask = 0;
|
||||
ddsfd.ddpfPixelFormat.u3.dwBBitMask = 0;
|
||||
} else {
|
||||
} else {
|
||||
ddsfd.ddpfPixelFormat.dwFlags = DDPF_RGB;
|
||||
ddsfd.ddpfPixelFormat.u.dwRGBBitCount = ModeEmulations[c].dest.bpp;
|
||||
ddsfd.ddpfPixelFormat.u1.dwRBitMask = ModeEmulations[c].dest.rmask;
|
||||
|
@ -799,7 +799,7 @@ static HRESULT WINAPI Xlib_IDirectDraw2Impl_EnumDisplayModes(
|
|||
}
|
||||
|
||||
if (send_mode == 0)
|
||||
ERR("No visual corresponding to pixmap format !\n");
|
||||
WARN("No visual corresponding to pixmap format !\n");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -38,6 +38,7 @@ extern KeySym TSXLookupKeysym(XKeyEvent*, int);
|
|||
extern KeySym * TSXGetKeyboardMapping(Display*, unsigned int, int, int*);
|
||||
extern char * TSXResourceManagerString(Display*);
|
||||
extern int TSXInitThreads(void);
|
||||
extern XPixmapFormatValues * TSXListPixmapFormats(Display*, int*);
|
||||
extern int * TSXListDepths(Display*, int, int*);
|
||||
extern int TSXReconfigureWMWindow(Display*, Window, int, unsigned int, XWindowChanges*);
|
||||
extern int TSXSetWMProtocols(Display*, Window, Atom*, int);
|
||||
|
|
|
@ -91,6 +91,7 @@ XKeysymToKeycode
|
|||
XKeysymToString
|
||||
XListDepths
|
||||
XListFonts
|
||||
XListPixmapFormats
|
||||
XLoadQueryFont
|
||||
XLookupKeysym
|
||||
XLookupString
|
||||
|
|
|
@ -277,6 +277,17 @@ int TSXInitThreads(void)
|
|||
return r;
|
||||
}
|
||||
|
||||
XPixmapFormatValues * TSXListPixmapFormats(Display* a0, int* a1)
|
||||
{
|
||||
XPixmapFormatValues * r;
|
||||
TRACE("Call XListPixmapFormats\n");
|
||||
EnterCriticalSection( &X11DRV_CritSection );
|
||||
r = XListPixmapFormats(a0, a1);
|
||||
LeaveCriticalSection( &X11DRV_CritSection );
|
||||
TRACE("Ret XListPixmapFormats\n");
|
||||
return r;
|
||||
}
|
||||
|
||||
int * TSXListDepths(Display* a0, int a1, int* a2)
|
||||
{
|
||||
int * r;
|
||||
|
|
Loading…
Reference in New Issue