glu32: Return GL_OUT_OF_MEMORY from gluScaleImage if no context.
This commit is contained in:
parent
ac36348179
commit
3b61019b8c
2 changed files with 5 additions and 3 deletions
|
@ -37,6 +37,7 @@
|
|||
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "wingdi.h"
|
||||
#include "wine/wgl.h"
|
||||
#include "wine/glu.h"
|
||||
|
||||
|
@ -3452,6 +3453,10 @@ GLint WINAPI gluScaleImage( GLenum format, GLint widthin, GLint heightin, GLenum
|
|||
if (!isLegalFormatForPackedPixelType(format, typeout)) {
|
||||
return GLU_INVALID_OPERATION;
|
||||
}
|
||||
if (!wglGetCurrentContext()) {
|
||||
return GL_OUT_OF_MEMORY; /* windows returns this if no gl context (not glu error) */
|
||||
}
|
||||
|
||||
beforeImage =
|
||||
HeapAlloc(GetProcessHeap(), 0, image_size(widthin, heightin, format, GL_UNSIGNED_SHORT));
|
||||
afterImage =
|
||||
|
|
|
@ -40,12 +40,9 @@ static void test_gluScaleImage(HDC hdc, HGLRC hglrc)
|
|||
/* test without any context */
|
||||
wglMakeCurrent(hdc, 0);
|
||||
|
||||
/* test crashes on Wine */
|
||||
if (!winetest_platform_is_wine) {
|
||||
err = gluScaleImage(GL_RGBA, DIMIN, DIMIN, GL_UNSIGNED_BYTE, bufin,
|
||||
DIMOUT, DIMOUT, GL_UNSIGNED_BYTE, bufout);
|
||||
ok(err == GL_OUT_OF_MEMORY, "got %x\n", err);
|
||||
}
|
||||
|
||||
/* test with context */
|
||||
wglMakeCurrent(hdc, hglrc);
|
||||
|
|
Loading…
Add table
Reference in a new issue