1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-05-22 09:05:54 +02:00

gnu: btop: Update to 1.4.1.

* gnu/packages/admin.scm (btop): Update to 1.4.1.
(source)[patches]: Remove "btop-fix-segfault-on-intel-gpus.patch".
* gnu/packages/patches/btop-fix-segfault-on-intel-gpus.patch: Remove.
* gnu/local.mk (dist_patch_DATA): Deregister
"btop-fix-segfault-on-intel-gpus.patch".

Change-Id: Ia8b465b54525246ce939cdd767bcb37bd5a492f0
This commit is contained in:
Artyom V. Poptsov
2025-04-28 20:55:30 +03:00
parent 3222cc3f03
commit 1710c0941d
3 changed files with 2 additions and 54 deletions
-1
View File
@@ -1053,7 +1053,6 @@ dist_patch_DATA = \
%D%/packages/patches/bsd-games-number.c-and-test.patch \
%D%/packages/patches/bsd-games-prevent-name-collisions.patch \
%D%/packages/patches/bsd-games-stdio.h.patch \
%D%/packages/patches/btop-fix-segfault-on-intel-gpus.patch \
%D%/packages/patches/beancount-disable-googleapis-fonts.patch \
%D%/packages/patches/beignet-correct-file-names.patch \
%D%/packages/patches/bidiv-update-fribidi.patch \
+2 -4
View File
@@ -935,7 +935,7 @@ console.")
(define-public btop
(package
(name "btop")
(version "1.4.0")
(version "1.4.1")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -944,9 +944,7 @@ console.")
(file-name (git-file-name name version))
(sha256
(base32
"0vgw6hwqh6zbzrvrn3i0xwi9ykm1qdvhqcyz3mjakd7w303lx603"))
(patches
(search-patches "btop-fix-segfault-on-intel-gpus.patch"))))
"08g4gbqc12is23nhrhqc5fhqicxs7dvy3alhyl66h6v35x7209vc"))))
(build-system gnu-build-system)
(native-inputs (list lowdown))
(arguments
@@ -1,49 +0,0 @@
From 0ed4e9e907b3a3f1c2ae209b1dab384b1fa7a490 Mon Sep 17 00:00:00 2001
From: "Artyom V. Poptsov" <poptsov.artyom@gmail.com>
Date: Sun, 3 Nov 2024 09:02:45 +0300
Subject: [PATCH] intel_name_lookup_shim.c (get_intel_device_name): Fix
SEGFAULT
btop would always fail with "Segmentation fault" when used on machines where the
GPU does not have a codename (e.g. on embedded Intel graphics on Intel(R)
Atom(TM) CPU D2500.) The reason for this behavior is that when a GPU does not
have codename (it is NULL) the call to "strcpy" segfaults as the procedure
effectively tries to access a NULL pointer.
See <https://github.com/aristocratos/btop/pull/958>.
* src/linux/intel_gpu_top/intel_name_lookup_shim.c (get_intel_device_name): Add
a check if "info->codename" is null; if it is, set the device name to
"(unknown)" to prevent the SEGFAULT error.
---
src/linux/intel_gpu_top/intel_name_lookup_shim.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/src/linux/intel_gpu_top/intel_name_lookup_shim.c b/src/linux/intel_gpu_top/intel_name_lookup_shim.c
index e714f80..38f87fa 100644
--- a/src/linux/intel_gpu_top/intel_name_lookup_shim.c
+++ b/src/linux/intel_gpu_top/intel_name_lookup_shim.c
@@ -84,10 +84,14 @@ char *get_intel_device_name(const char *device_id) {
char full_name[256];
const struct intel_device_info *info = intel_get_device_info(devid);
if (info) {
- strcpy(dev_name, info->codename);
- dev_name[0] = toupper(dev_name[0]);
+ if (info->codename == NULL) {
+ strcpy(dev_name, "(unknown)");
+ } else {
+ strcpy(dev_name, info->codename);
+ dev_name[0] = toupper(dev_name[0]);
+ }
snprintf(full_name, sizeof(full_name), "Intel %s (Gen%u)", dev_name, info->graphics_ver);
return strdup(full_name);
}
return NULL;
-}
\ No newline at end of file
+}
base-commit: 2e7208d59c54515080027a5ecbb89d2054047985
--
2.46.0