Просмотр исходного кода

SDL_SetWindowShape(): Remove shape when argument is NULL

Petar Popovic 1 день назад
Родитель
Сommit
53c799a7a9
1 измененных файлов с 7 добавлено и 3 удалено
  1. 7 3
      src/video/SDL_video.c

+ 7 - 3
src/video/SDL_video.c

@@ -6147,9 +6147,13 @@ bool SDL_SetWindowShape(SDL_Window *window, SDL_Surface *shape)
         return false;
     }
 
-    surface = SDL_ConvertSurface(shape, SDL_PIXELFORMAT_ARGB32);
-    if (!surface) {
-        return false;
+    if (shape) {
+        surface = SDL_ConvertSurface(shape, SDL_PIXELFORMAT_ARGB32);
+        if (!surface) {
+            return false;
+        }
+    } else {
+        surface = NULL;
     }
 
     if (!SDL_SetSurfaceProperty(props, SDL_PROP_WINDOW_SHAPE_POINTER, surface)) {