diff --git a/media-gfx/grafx2/patches/grafx2-2.8.patchset b/media-gfx/grafx2/patches/grafx2-2.8.patchset index 517f6fa2d..f10b7bb37 100644 --- a/media-gfx/grafx2/patches/grafx2-2.8.patchset +++ b/media-gfx/grafx2/patches/grafx2-2.8.patchset @@ -1,31 +1,45 @@ -From b616fdb35baf79ece153b70ca3613d57dee212de Mon Sep 17 00:00:00 2001 +From 9df6715c21c6064153a068f11ff008d71615aefc Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Tue, 30 Mar 2021 10:59:41 +0200 -Subject: add checks in Extract_path +Subject: include haiku.h in setup.c +improve haiku_get_app_path() -diff --git a/src/io.c b/src/io.c -index ab64904..30da356 100644 ---- a/src/io.c -+++ b/src/io.c -@@ -353,6 +353,17 @@ char * Extract_path(char *dest, const char *source) - char * position; - char * path; +diff --git a/src/haiku.cpp b/src/haiku.cpp +index 708564c..a13e623 100644 +--- a/src/haiku.cpp ++++ b/src/haiku.cpp +@@ -63,12 +63,13 @@ char* haiku_get_clipboard() + const char* haiku_get_app_path() + { + static image_info info; +- static int32 cookie = 0; ++ int32 cookie = 0; -+ if (dest == NULL) -+ { -+ GFX2_Log(GFX2_ERROR, "Extract_path() dest is null !\n"); -+ return NULL; -+ } -+ if (source == NULL) -+ { -+ GFX2_Log(GFX2_ERROR, "Extract_path() source is null !\n"); -+ return NULL; -+ } -+ - path = Realpath(source, dest); - if (path == NULL) - { +- if (cookie == 0) do { +- get_next_image_info(B_CURRENT_TEAM, &cookie, &info); +- } while (info.type != B_APP_IMAGE); ++ while (get_next_image_info(B_CURRENT_TEAM, &cookie, &info) == B_OK) { ++ if (info.type == B_APP_IMAGE) ++ return info.name; ++ } + +- return info.name; ++ return NULL; + } + #endif +diff --git a/src/setup.c b/src/setup.c +index 3ecb0f6..1a5844c 100644 +--- a/src/setup.c ++++ b/src/setup.c +@@ -43,6 +43,7 @@ + #include + #elif defined(__HAIKU__) + #include ++ #include "haiku.h" + #endif + + #include "struct.h" -- 2.30.0