為什麼 bash 的 tab 補全會觸發堆疊保護器?

為什麼 bash 的 tab 補全會觸發堆疊保護器?

我在 Manjaro 上使用bash5.0.16(和2.10)。bash-completion今天,我在移動一些檔案時心不在焉地按了 Tab 鍵,並收到了一個意想不到的訊息:

[charles@wirepile some_dir]$ mv ~down*** stack smashing detected ***: <unknown> terminated

我必須^C重新獲得對外殼的控制。

看來,每當在波浪號字元上呼叫製表符補全(無論後面有或沒有其他字元)時,我的(最新的 Manjaro)建構的 bash 都會觸發堆疊保護器。下列工作:

[charles@wirepile some_dir]$ ls ~/
.this_dir/                .that_file                 another_file

我的 中不應該有任何不尋常的行.bashrc,除非 Manjaro 默認自訂它。

我想這是某種緩衝區溢出,應該被視為一個錯誤——這是故意的嗎?我應該聯繫開發人員還是包維護人員?

我也很好奇——有人能重現這個問題嗎?

答案1

這是故意的嗎?我應該聯繫開發人員還是包維護人員?

是的,這是一個錯誤。它已被許多其他人轉載,並被報告為錯誤今年(2020-01-06)致 Bash 維護者。

截至我撰寫本文時(2020-07-23),尚未發布任何後續內容,因此我們還不知道維護者正在做什麼。

相關內容