Ble.sh: 入れ子になったbashの子シェルからexitした際に大量のログが出る

Created on 5 Oct 2018  ·  10Comments  ·  Source: akinomyoga/ble.sh

ble.sh環境下で bash を更に立ち上げexitした際に、以下のように大量のログが出ます

[1]    Running                 '/bin/stty' "$@"
[2]   Stopped                 '/bin/stty' "$@"
[3]   Stopped                 '/bin/stty' "$@"
(以下、無限に続く)

ble.sh.bashrc 内で読み込んでおり、入れ子になったシェルの両方にロードされています。

compatibility

All 10 comments

ご報告ありがとうございます! こちらでいろいろ試したところ Bash 3.2 で C-d で抜けようとした時に類似の現象が再現するようでした。調べてみます。

対応に時間がかかっていて申し訳ありません。別の簡単そうに思った Issue #16 の方を先に片付けようと思ったのですが、そちらで泥沼に陥ってしまったのでまだ対応に時間がかかりそうです。

先にこちらで再現している問題とそちらで発生している問題が同じかどうか確認させていただきたく思います。こちらの手元では Bash 3.0-3.2 の中で Bash 3.1-3.2 を起動した時に問題が発生しています。Bash 3.0-3.2, 4.0-4.4, 5.0β の中で Bash 3.0, 4.0-4.4, 5.0β を起動した時には再現していません。そちらでお使いの Bash のバージョンは 3.1 または 3.2 という事で問題ないでしょうか。

丁寧に対応していただきありがとうございます。
急ぎではないので、他のissueを優先していただいて構いません。

bashのバージョンですが、今すぐの確認ができないので、今晩、報告させていただきます

2018年10月9日(火) 9:21 Koichi Murase notifications@github.com:

対応に時間がかかっていて申し訳ありません。別の簡単そうに思った Issue #16
https://github.com/akinomyoga/ble.sh/issues/16
の方を先に片付けようと思ったのですが、そちらで泥沼に陥ってしまったのでまだ対応に時間がかかりそうです。

先にこちらで再現している問題とそちらで発生している問題が同じかどうか確認させていただきたく思います。こちらの手元では Bash 3.0-3.2
の中で Bash 3.1-3.2 を起動した時に問題が発生しています。Bash 3.0-3.2, 4.0-4.4, 5.0β の中で Bash
3.0, 4.0-4.4, 5.0β を起動した時には再現していません。そちらでお使いの Bash のバージョンは 3.1 または 3.2
という事で問題ないでしょうか。


You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/akinomyoga/ble.sh/issues/15#issuecomment-428019601,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADGjfT8Q3Pze6pkPZ8UejUjCIC9aqbCaks5ui-wJgaJpZM4XKshO
.

バージョンを確認しました

GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin18)

です

また、bashのバージョンを上げたところとりあえず問題は発生しなくなりました。

確かめていただきありがとうございます! ということはこちらで再現しているのと同じ問題ですね。わざわざ新しい Bash まで試していただいてありがとうございます (実の所、Bash 3.2 以前は機能が少ないので ble.sh は結構無理をした実装になっており動作が遅いのです。従って本当は Bash 4.0 以降が推奨なのでした)。

この問題に関しては #16 が終わってから Bash の動作を調べて対策いたしますね。

  • d4b39b37561267136c9681748ff9afdf60634191 問題の特定に時間がかかりましたが直しました (結局この1行の修正でした)。

Bash の振る舞いが解せないので調べてみると Bash 4.0 の修正で挙げられていた以下のバグを踏んでいました。リダイレクトを作る前に明示的にファイルディスクリプタを閉じるように対策しました。

This document details the changes between this version, bash-4.0-alpha,
and the previous version, bash-3.2-release.

1.  Changes to Bash

(中略)

ee. Fixed a bug that caused bash to close file descriptors greater than 10
    when they were used in redirections.

@Kiikurage さま、こちら修正に時間がかかってしまいましたが、問題が発生しなくなっているか確認をお願いしてもよろしいでしょうか。お手数をおかけしますがよろしくおねがいいたします。

ご対応くださりありがとうございます。
d4b39b3 をビルドして使ってみたところ、GNU bash, version 3.2.57(1)-release (x86_64-apple-darwin18) で問題が発生しなくなっていることを確認しました。
ありがとうございます。

早速ご確認いただきありがとうございます! こちらの Issue は閉じさせていただきますね

Was this page helpful?
0 / 5 - 0 ratings