Fixing bugs introduced into X11 shaping implementation by merge.
This commit is contained in:
parent
b6eeb0d250
commit
5f2c8902e0
1 changed files with 7 additions and 7 deletions
|
@ -20,7 +20,7 @@
|
|||
eligottlieb@gmail.com
|
||||
*/
|
||||
|
||||
#include <assert.h>
|
||||
#include "SDL_assert.h"
|
||||
#include "SDL_x11video.h"
|
||||
#include "SDL_x11shape.h"
|
||||
#include "SDL_x11window.h"
|
||||
|
@ -30,7 +30,7 @@ X11_CreateShapedWindow(const char *title,unsigned int x,unsigned int y,unsigned
|
|||
return SDL_CreateWindow(title,x,y,w,h,flags);
|
||||
}
|
||||
|
||||
SDL_WindowShaper*
|
||||
SDL_WindowShaper*
|
||||
X11_CreateShaper(SDL_Window* window) {
|
||||
SDL_WindowShaper* result = NULL;
|
||||
|
||||
|
@ -41,23 +41,23 @@ X11_CreateShaper(SDL_Window* window) {
|
|||
result->mode.mode = ShapeModeDefault;
|
||||
result->mode.parameters.binarizationCutoff = 1;
|
||||
result->usershownflag = 0;
|
||||
SDL_ShapeData* data = malloc(sizeof(SDL_ShapeData));
|
||||
SDL_ShapeData* data = SDL_malloc(sizeof(SDL_ShapeData));
|
||||
result->driverdata = data;
|
||||
data->bitmapsize = 0;
|
||||
data->bitmap = NULL;
|
||||
window->shaper = result;
|
||||
int resized_properly = X11_ResizeWindowShape(window);
|
||||
assert(resized_properly == 0);
|
||||
SDL_assert(resized_properly == 0);
|
||||
}
|
||||
#endif
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
int
|
||||
int
|
||||
X11_ResizeWindowShape(SDL_Window* window) {
|
||||
SDL_ShapeData* data = window->shaper->driverdata;
|
||||
assert(data != NULL);
|
||||
SDL_assert(data != NULL);
|
||||
|
||||
unsigned int bitmapsize = window->w / 8;
|
||||
if(window->w % 8 > 0)
|
||||
|
@ -80,7 +80,7 @@ X11_ResizeWindowShape(SDL_Window* window) {
|
|||
return 0;
|
||||
}
|
||||
|
||||
int
|
||||
int
|
||||
X11_SetWindowShape(SDL_WindowShaper *shaper,SDL_Surface *shape,SDL_WindowShapeMode *shapeMode) {
|
||||
if(shaper == NULL || shape == NULL || shaper->driverdata == NULL)
|
||||
return -1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue