Fix CreateCursor masking

If there was no mask, cursor would be invisible
This commit is contained in:
Oskari Alaranta 2026-02-21 03:46:14 +02:00
parent 2016621f78
commit a32d509cde
1 changed files with 3 additions and 3 deletions

View File

@ -3140,7 +3140,7 @@ BAN::ErrorOr<void> handle_packet(Client& client_info, BAN::ConstByteSpan packet)
auto* source_data_u32 = reinterpret_cast<const uint32_t*>(source.data.data());
for (size_t i = 0; i < cursor.width * cursor.height; i++)
cursor.pixels[i] = source_data_u32[i] ? foreground : background;
cursor.pixels[i] = 0xFF000000 | (source_data_u32[i] ? foreground : background);
if (request.mask != None)
{
@ -3151,8 +3151,8 @@ BAN::ErrorOr<void> handle_packet(Client& client_info, BAN::ConstByteSpan packet)
auto* mask_data_u32 = reinterpret_cast<const uint32_t*>(mask.data.data());
for (size_t i = 0; i < cursor.width * cursor.height; i++)
if (mask_data_u32[i])
cursor.pixels[i] |= 0xFF000000;
if (!mask_data_u32[i])
cursor.pixels[i] = 0;
}
TRY(client_info.objects.insert(request.cid));