mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-12-02 11:53:27 +00:00
commit
7f3ed2fc04
@ -1,72 +0,0 @@
|
||||
From 01f753df5dc269cf054b94c3f210aa880872d602 Mon Sep 17 00:00:00 2001
|
||||
From: nicm <nicm>
|
||||
Date: Wed, 24 Aug 2022 07:22:30 +0000
|
||||
Subject: [PATCH] Check for NULL returns from bufferevent_new.
|
||||
|
||||
(cherry picked from commit e86752820993a00e3d28350cbe46878ba95d9012)
|
||||
---
|
||||
control.c | 4 ++++
|
||||
file.c | 4 ++++
|
||||
window.c | 2 ++
|
||||
3 files changed, 10 insertions(+)
|
||||
|
||||
diff --git a/control.c b/control.c
|
||||
index 73286e00..6183a006 100644
|
||||
--- a/control.c
|
||||
+++ b/control.c
|
||||
@@ -775,6 +775,8 @@ control_start(struct client *c)
|
||||
|
||||
cs->read_event = bufferevent_new(c->fd, control_read_callback,
|
||||
control_write_callback, control_error_callback, c);
|
||||
+ if (cs->read_event == NULL)
|
||||
+ fatalx("out of memory");
|
||||
bufferevent_enable(cs->read_event, EV_READ);
|
||||
|
||||
if (c->flags & CLIENT_CONTROLCONTROL)
|
||||
@@ -782,6 +784,8 @@ control_start(struct client *c)
|
||||
else {
|
||||
cs->write_event = bufferevent_new(c->out_fd, NULL,
|
||||
control_write_callback, control_error_callback, c);
|
||||
+ if (cs->write_event == NULL)
|
||||
+ fatalx("out of memory");
|
||||
}
|
||||
bufferevent_setwatermark(cs->write_event, EV_WRITE, CONTROL_BUFFER_LOW,
|
||||
0);
|
||||
diff --git a/file.c b/file.c
|
||||
index b2f155fe..04a907bf 100644
|
||||
--- a/file.c
|
||||
+++ b/file.c
|
||||
@@ -585,6 +585,8 @@ file_write_open(struct client_files *files, struct tmuxpeer *peer,
|
||||
|
||||
cf->event = bufferevent_new(cf->fd, NULL, file_write_callback,
|
||||
file_write_error_callback, cf);
|
||||
+ if (cf->event == NULL)
|
||||
+ fatalx("out of memory");
|
||||
bufferevent_enable(cf->event, EV_WRITE);
|
||||
goto reply;
|
||||
|
||||
@@ -744,6 +746,8 @@ file_read_open(struct client_files *files, struct tmuxpeer *peer,
|
||||
|
||||
cf->event = bufferevent_new(cf->fd, file_read_callback, NULL,
|
||||
file_read_error_callback, cf);
|
||||
+ if (cf->event == NULL)
|
||||
+ fatalx("out of memory");
|
||||
bufferevent_enable(cf->event, EV_READ);
|
||||
return;
|
||||
|
||||
diff --git a/window.c b/window.c
|
||||
index c0cd9bdc..294a1f08 100644
|
||||
--- a/window.c
|
||||
+++ b/window.c
|
||||
@@ -1042,6 +1042,8 @@ window_pane_set_event(struct window_pane *wp)
|
||||
|
||||
wp->event = bufferevent_new(wp->fd, window_pane_read_callback,
|
||||
NULL, window_pane_error_callback, wp);
|
||||
+ if (wp->event == NULL)
|
||||
+ fatalx("out of memory");
|
||||
wp->ictx = input_init(wp, wp->event, &wp->palette);
|
||||
|
||||
bufferevent_enable(wp->event, EV_READ|EV_WRITE);
|
||||
--
|
||||
2.39.1
|
||||
|
@ -10,6 +10,7 @@
|
||||
, withSystemd ? lib.meta.availableOn stdenv.hostPlatform systemd, systemd
|
||||
, withUtf8proc ? true, utf8proc # gets Unicode updates faster than glibc
|
||||
, withUtempter ? stdenv.isLinux && !stdenv.hostPlatform.isMusl, libutempter
|
||||
, withSixel ? true
|
||||
}:
|
||||
|
||||
let
|
||||
@ -25,7 +26,7 @@ in
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "tmux";
|
||||
version = "3.3a";
|
||||
version = "3.4";
|
||||
|
||||
outputs = [ "out" "man" ];
|
||||
|
||||
@ -33,13 +34,9 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
owner = "tmux";
|
||||
repo = "tmux";
|
||||
rev = finalAttrs.version;
|
||||
sha256 = "sha256-SygHxTe7N4y7SdzKixPFQvqRRL57Fm8zWYHfTpW+yVY=";
|
||||
hash = "sha256-RX3RZ0Mcyda7C7im1r4QgUxTnp95nfpGgQ2HRxr0s64=";
|
||||
};
|
||||
|
||||
patches = [
|
||||
./CVE-2022-47016.patch
|
||||
];
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
autoreconfHook
|
||||
@ -57,6 +54,7 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
"--sysconfdir=/etc"
|
||||
"--localstatedir=/var"
|
||||
] ++ lib.optionals withSystemd [ "--enable-systemd" ]
|
||||
++ lib.optionals withSixel [ "--enable-sixel" ]
|
||||
++ lib.optionals withUtempter [ "--enable-utempter" ]
|
||||
++ lib.optionals withUtf8proc [ "--enable-utf8proc" ];
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user