mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 05:48:07 -05:00
gnu: dunst: Fix crash on invalid pixbuf notification.
* gnu/packages/patches/dunst-1.7.3-fix-crash.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/dunst.scm (dunst)[source]<#:patches>: Add it.
This commit is contained in:
parent
a82847dcf3
commit
ba60aede97
3 changed files with 25 additions and 1 deletions
|
@ -1005,6 +1005,7 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \
|
%D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \
|
||||||
%D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch \
|
%D%/packages/patches/dstat-fix-crash-when-specifying-delay.patch \
|
||||||
%D%/packages/patches/dstat-skip-devices-without-io.patch \
|
%D%/packages/patches/dstat-skip-devices-without-io.patch \
|
||||||
|
%D%/packages/patches/dunst-1.7.3-fix-crash.patch \
|
||||||
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
||||||
%D%/packages/patches/dynaconf-unvendor-deps.patch \
|
%D%/packages/patches/dynaconf-unvendor-deps.patch \
|
||||||
%D%/packages/patches/ecl-16-format-directive-limit.patch \
|
%D%/packages/patches/ecl-16-format-directive-limit.patch \
|
||||||
|
|
|
@ -27,6 +27,7 @@ (define-module (gnu packages dunst)
|
||||||
#:use-module (guix build-system gnu)
|
#:use-module (guix build-system gnu)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module ((guix licenses) #:prefix license:)
|
#:use-module ((guix licenses) #:prefix license:)
|
||||||
|
#:use-module (gnu packages)
|
||||||
#:use-module (gnu packages base)
|
#:use-module (gnu packages base)
|
||||||
#:use-module (gnu packages freedesktop)
|
#:use-module (gnu packages freedesktop)
|
||||||
#:use-module (gnu packages glib)
|
#:use-module (gnu packages glib)
|
||||||
|
@ -48,7 +49,8 @@ (define-public dunst
|
||||||
(file-name (git-file-name name version))
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1ra0ii805w3rrs0qqbjxzl6i79ksz42lnvbglw18h4igkza21kzj"))))
|
"1ra0ii805w3rrs0qqbjxzl6i79ksz42lnvbglw18h4igkza21kzj"))
|
||||||
|
(patches (search-patches "dunst-1.7.3-fix-crash.patch"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ; no check target
|
`(#:tests? #f ; no check target
|
||||||
|
|
21
gnu/packages/patches/dunst-1.7.3-fix-crash.patch
Normal file
21
gnu/packages/patches/dunst-1.7.3-fix-crash.patch
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
Author: Danny Milosavljevic <dannym@scratchpost.org>
|
||||||
|
Date: 2022-02-04 21:52:05 CET
|
||||||
|
|
||||||
|
Fix crash if notification contains invalid pixbuf data.
|
||||||
|
|
||||||
|
diff -ru /gnu/store/5885czxhmhkckjqj939b0hd6b6czizwb-dunst-1.7.3-checkout/src/notification.c 5885czxhmhkckjqj939b0hd6b6czizwb-dunst-1.7.3-checkout/src/notification.c
|
||||||
|
--- /gnu/store/5885czxhmhkckjqj939b0hd6b6czizwb-dunst-1.7.3-checkout/src/notification.c 1970-01-01 01:00:01.000000000 +0100
|
||||||
|
+++ 5885czxhmhkckjqj939b0hd6b6czizwb-dunst-1.7.3-checkout/src/notification.c 2022-02-04 19:05:57.534906600 +0100
|
||||||
|
@@ -359,8 +359,10 @@
|
||||||
|
g_clear_pointer(&n->icon_id, g_free);
|
||||||
|
|
||||||
|
GdkPixbuf *icon = icon_get_for_data(new_icon, &n->icon_id, draw_get_scale());
|
||||||
|
- n->icon = gdk_pixbuf_to_cairo_surface(icon);
|
||||||
|
- g_object_unref(icon);
|
||||||
|
+ if (icon) {
|
||||||
|
+ n->icon = gdk_pixbuf_to_cairo_surface(icon);
|
||||||
|
+ g_object_unref(icon);
|
||||||
|
+ }
|
||||||
|
}
|
||||||
|
|
||||||
|
/* see notification.h */
|
Loading…
Reference in a new issue