Commit 5f2c8902 authored by Eli Gottlieb's avatar Eli Gottlieb

Fixing bugs introduced into X11 shaping implementation by merge.

parent b6eeb0d2
......@@ -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;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment