Skip to content

Commit

Permalink
app-shells/fish: fix single test failing on 32bit arches
Browse files Browse the repository at this point in the history
Closes: https://bugs.gentoo.org/656246
Package-Manager: Portage-2.3.54, Repoman-2.3.12
Signed-off-by: Georgy Yakovlev <[email protected]>
  • Loading branch information
gyakovlev committed Jan 10, 2019
1 parent 89ec80e commit 3df1fcd
Show file tree
Hide file tree
Showing 3 changed files with 37 additions and 3 deletions.
31 changes: 31 additions & 0 deletions app-shells/fish/files/fix-histfile-test-on-ppc.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
From 2c01e67a74ca48ca87e2f11f6239d54c35551e7b Mon Sep 17 00:00:00 2001
From: David Adam <[email protected]>
Date: Sat, 5 Jan 2019 15:59:25 +0800
Subject: [PATCH] histfile tests: tweak expect commands to avoid crash on
32-bit platforms

Rather than killing the process with close, read EOF after sending the
"exit" command and wait for OS cleanup (per the expect examples).

Not cleaning up with wait caused expect to crash on all 32-bit platforms
including i586 and armv7l with "alloc: invalid block: 0xbf993ccb: 3d 3b".

64-bit platforms were not affected, for reasons that are not clear.
---
tests/histfile.expect | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tests/histfile.expect b/tests/histfile.expect
index 81ca11276..7ac056235 100644
--- a/tests/histfile.expect
+++ b/tests/histfile.expect
@@ -92,7 +92,8 @@ expect_prompt -re "\r\n$hist_line\r\n" {
# =============
# Start by shutting down the previous shell.
send "exit\r"
-close $spawn_id
+expect eof
+wait

# Set the fish_history env var.
set ::env(fish_history) env
5 changes: 3 additions & 2 deletions app-shells/fish/fish-2.7.1.ebuild
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright 1999-2018 Gentoo Foundation
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=6
Expand Down Expand Up @@ -27,7 +27,8 @@ DEPEND="
test? ( dev-tcltk/expect )
"

PATCHES=( "${FILESDIR}/${P}-fix-printf-o-handling-on-ppc.patch" )
PATCHES=( "${FILESDIR}/${P}-fix-printf-o-handling-on-ppc.patch"
"${FILESDIR}/fix-histfile-test-on-ppc.patch" )

S="${WORKDIR}/${MY_P}"

Expand Down
4 changes: 3 additions & 1 deletion app-shells/fish/fish-3.0.0-r1.ebuild
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Copyright 1999-2018 Gentoo Authors
# Copyright 1999-2019 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=7
Expand Down Expand Up @@ -36,6 +36,8 @@ DEPEND="${RDEPEND}
test? ( dev-tcltk/expect )
"

PATCHES=( "${FILESDIR}/fix-histfile-test-on-ppc.patch" )

S="${WORKDIR}/${MY_P}"

src_prepare() {
Expand Down

0 comments on commit 3df1fcd

Please sign in to comment.