Skip to content

Commit 600f6c7

Browse files
committed
Image: don't dlclose(imageMagick)
Fix: #552
1 parent 11b1b97 commit 600f6c7

File tree

3 files changed

+9
-2
lines changed

3 files changed

+9
-2
lines changed

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ Bugfixes:
1818
* Fix memory usage counting algorithm (Memory, macOS)
1919
* Fix the behavior of `--no-buffer` in Windows
2020
* Fix possible segfault in some devices (Display, Linux)
21+
* Fix segfaults on first use of new images with Sixel flag (Image)
2122

2223
Logo:
2324
* Remove unnecessary escaping for Adelie logo

src/logo/image/im6.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,13 @@ FFLogoImageResult ffLogoPrintImageIM6(FFLogoRequestData* requestData)
1717
FF_LIBRARY_LOAD(imageMagick, &instance.config.library.libImageMagick, FF_LOGO_IMAGE_RESULT_INIT_ERROR, "libMagickCore-6.Q16HDRI" FF_LIBRARY_EXTENSION, 8, "libMagickCore-6.Q16" FF_LIBRARY_EXTENSION, 8)
1818
FF_LIBRARY_LOAD_SYMBOL_ADDRESS(imageMagick, ffResizeImage, ResizeImage, FF_LOGO_IMAGE_RESULT_INIT_ERROR);
1919

20-
return ffLogoPrintImageImpl(requestData, &(FFIMData) {
20+
FFLogoImageResult result = ffLogoPrintImageImpl(requestData, &(FFIMData) {
2121
.resizeFunc = logoResize,
2222
.library = imageMagick,
2323
});
24+
25+
imageMagick = NULL; // leak imageMagick to prevent fastfetch from crashing #552
26+
return result;
2427
}
2528

2629
#endif

src/logo/image/im7.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,10 +21,13 @@ FFLogoImageResult ffLogoPrintImageIM7(FFLogoRequestData* requestData)
2121
)
2222
FF_LIBRARY_LOAD_SYMBOL_ADDRESS(imageMagick, ffResizeImage, ResizeImage, FF_LOGO_IMAGE_RESULT_INIT_ERROR);
2323

24-
return ffLogoPrintImageImpl(requestData, &(FFIMData) {
24+
FFLogoImageResult result = ffLogoPrintImageImpl(requestData, &(FFIMData) {
2525
.resizeFunc = logoResize,
2626
.library = imageMagick,
2727
});
28+
29+
imageMagick = NULL; // leak imageMagick to prevent fastfetch from crashing #552
30+
return result;
2831
}
2932

3033
#endif

0 commit comments

Comments
 (0)