Brendan Shanks (@bshanks) commented about dlls/winemac.drv/surface.c:
+ if (shape_changed || surface->shape_changed) { + surface->shape_changed = FALSE; + + /* No shape, fully opaque */ if (!shape_bits) - macdrv_window_set_shape_image(surface->window, NULL); + { + Pixel_8888 alpha1 = { 0, 0, 0, 255 }; + vImage_Buffer dst = { + .data = IOSurfaceGetBaseAddress(io_surface), + .height = IOSurfaceGetHeight(io_surface), + .width = IOSurfaceGetWidth(io_surface), + .rowBytes = IOSurfaceGetBytesPerRow(io_surface), + }; + vImageOverwriteChannelsWithPixel_ARGB8888(alpha1, &dst, &dst, 0x1, kvImageNoFlags); Need to unlock/lock `io_surface` around this call
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/7938#note_122157