From c8385aba83438d5e1df0ce6d18f844c81e06857d Mon Sep 17 00:00:00 2001 From: Ray Date: Sat, 17 Nov 2018 00:46:42 +0100 Subject: [PATCH] Review SetWindowIcon() --- src/core.c | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/src/core.c b/src/core.c index 94571599..7876325b 100644 --- a/src/core.c +++ b/src/core.c @@ -763,18 +763,21 @@ void ToggleFullscreen(void) void SetWindowIcon(Image image) { #if defined(PLATFORM_DESKTOP) - ImageFormat(&image, UNCOMPRESSED_R8G8B8A8); + Image imicon = ImageCopy(image); + ImageFormat(&imicon, UNCOMPRESSED_R8G8B8A8); - GLFWimage icon[1]; + GLFWimage imicon[1] = { 0 }; - icon[0].width = image.width; - icon[0].height = image.height; - icon[0].pixels = (unsigned char *)image.data; + icon[0].width = imicon.width; + icon[0].height = imicon.height; + icon[0].pixels = (unsigned char *)imicon.data; - // NOTE: We only support one image icon + // NOTE 1: We only support one image icon + // NOTE 2: The specified image data is copied before this function returns glfwSetWindowIcon(window, 1, icon); // TODO: Support multi-image icons --> image.mipmaps + UnloadImage(imicon); #endif }