media-gfx/swayimg: drop 4.0

Signed-off-by: Nicolas PARLANT <nicolas.parlant@parhuet.fr>
This commit is contained in:
Nicolas PARLANT
2025-06-10 21:37:36 +02:00
parent c1e9784506
commit 27786ee559
3 changed files with 0 additions and 133 deletions

View File

@@ -1,3 +1,2 @@
DIST swayimg-4.0.tar.gz 768532 BLAKE2B c7121452f02af4b599679f2040233142978184cb1919d1af5d90540f0e1331542ec56c7d96e68f33aacb117083ae20ae3f2aa81833846c37c7868f9551f2d63c SHA512 e13eadab3188b25266caefabe493da95fecc41b7e78c29e836e895d3d68f71405296e330963a44e88a8adbc9ba6c881f952d30033d63fffd14ccf909ec742613
DIST swayimg-4.1.tar.gz 772139 BLAKE2B f20aca21800510f348f0cff3ee9d2c1a176f746b0e75f3b39147d1cee23ef54454ee618120c87d9649fde0bb0565ed2462bdc148b107c6eaf026d94cd8d7f3ad SHA512 0cce9c60bba1daa85776d155a656f7d3988a4e8fd5fa8f461c1bec00c800fdf6a51f6a18212042f61e324d45936434988d60e80bf03f237172d9a159e3e52153
DIST swayimg-4.2.tar.gz 778261 BLAKE2B 58a0fc1b70c7218493d499d224fd32bfcd4083515060ae6d5ec40225f127a0cc9115dff9237f90e12fb46ac66f110d7003edf8ea13218d7b5e631074c8d30f76 SHA512 6496591410ddadd4569c51e12b92d32f83b233b055212a50c861facb30cc7fe5c58c8b4e4955ae862086ed3d06f014fcc657fb8ba112b3bbfb287dc1e3ec3852

View File

@@ -1,52 +0,0 @@
From eff7ca90fb6db8ca214384f8660709fdaff405f6 Mon Sep 17 00:00:00 2001
From: Artem Senichev <artemsen@gmail.com>
Date: Sat, 17 May 2025 11:47:36 +0300
Subject: [PATCH] Fix potential memory leak
Signed-off-by: Artem Senichev <artemsen@gmail.com>
---
src/image.c | 18 ++++++++++--------
1 file changed, 10 insertions(+), 8 deletions(-)
diff --git a/src/image.c b/src/image.c
index cbb28e6..fbdef8d 100644
--- a/src/image.c
+++ b/src/image.c
@@ -36,14 +36,7 @@ bool image_clear(struct image* img, size_t mask)
bool all_free;
if ((mask & IMGDATA_FRAMES) && image_has_frames(img)) {
- struct imgdec* decoder = &img->data->decoder;
struct array* frames = img->data->frames;
-
- if (decoder->data) {
- decoder->free(img->data);
- }
- memset(decoder, 0, sizeof(*decoder));
-
for (size_t i = 0; i < frames->size; ++i) {
struct imgframe* frame = arr_nth(frames, i);
pixmap_free(&frame->pm);
@@ -52,12 +45,21 @@ bool image_clear(struct image* img, size_t mask)
img->data->frames = NULL;
}
+ // automatically free decoder if there are no frames
+ if (!image_has_frames(img)) {
+ struct imgdec* decoder = &img->data->decoder;
+ if (decoder->data) {
+ decoder->free(img->data);
+ }
+ memset(decoder, 0, sizeof(*decoder));
+ }
+
if ((mask & IMGDATA_THUMB) && image_has_thumb(img)) {
pixmap_free(&img->data->thumbnail);
img->data->thumbnail.data = NULL;
}
- // automatically free if there are no frames or thumbnail
+ // automatically free info if there are no frames or thumbnail
if (!image_has_frames(img) && !image_has_thumb(img)) {
mask |= IMGDATA_INFO;
}

View File

@@ -1,80 +0,0 @@
# Copyright 2023-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
inherit meson xdg
DESCRIPTION="A lightweight image viewer for Wayland display servers"
HOMEPAGE="https://github.com/artemsen/swayimg"
SRC_URI="https://github.com/artemsen/${PN}/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="MIT"
SLOT="0"
KEYWORDS="~amd64"
IUSE="avif bash-completion exif exr gif heif jpeg jpegxl png raw sixel svg +sway test tiff webp X"
RESTRICT="!test? ( test )"
RDEPEND="
dev-libs/wayland
media-libs/fontconfig
media-libs/freetype
x11-libs/libxkbcommon
avif? ( media-libs/libavif:= )
bash-completion? ( app-shells/bash-completion )
exif? ( media-libs/libexif )
exr? ( media-libs/openexr:= )
gif? ( media-libs/giflib:= )
heif? ( media-libs/libheif:= )
jpeg? ( media-libs/libjpeg-turbo:= )
jpegxl? ( media-libs/libjxl:= )
png? ( media-libs/libpng:= )
raw? ( media-libs/libraw:= )
sixel? ( media-libs/libsixel )
svg? (
dev-libs/glib:2
gnome-base/librsvg:2
x11-libs/cairo[X=]
)
sway? ( dev-libs/json-c:= )
tiff? ( media-libs/tiff:= )
webp? ( media-libs/libwebp:= )"
DEPEND="${RDEPEND}
dev-libs/wayland-protocols
svg? ( X? ( x11-base/xorg-proto ) )
"
BDEPEND="
dev-util/wayland-scanner
test? ( dev-cpp/gtest )
"
PATCHES=(
# From upstream, fix potential memory leak
"${FILESDIR}"/${P}-fix_memlk.patch
)
src_configure() {
local emesonargs=(
$(meson_feature avif)
$(meson_feature exif)
$(meson_feature exr)
$(meson_feature gif)
$(meson_feature heif)
$(meson_feature jpeg)
$(meson_feature jpegxl jxl)
$(meson_feature png)
$(meson_feature raw)
$(meson_feature sixel)
$(meson_feature svg)
$(meson_feature sway)
$(meson_feature test tests)
$(meson_feature tiff)
$(meson_feature webp)
$(meson_feature bash-completion bash)
-Dversion=${PV}
-Ddesktop=true
-Dman=true
-Dzsh=enabled
)
meson_src_configure
}