我在 Manjaro 上使用bash
5.0.16(和bash-completion
2.10)。今天,我在移动一些文件时心不在焉地按了 Tab 键,并收到了一条意想不到的消息:
[charles@wirepile some_dir]$ mv ~down*** stack smashing detected ***: <unknown> terminated
Run Code Online (Sandbox Code Playgroud)
我必须^C
重新获得对外壳的控制。
看来,每当在波浪号字符上调用制表符补全(无论后面有或没有其他字符)时,我的(最新的 Manjaro)bash 版本都会触发堆栈保护器。以下确实有效:
[charles@wirepile some_dir]$ ls ~/
.this_dir/ .that_file another_file
Run Code Online (Sandbox Code Playgroud)
我的 中不应该有任何不寻常的行.bashrc
,除非 Manjaro 默认自定义它。
我想这是某种缓冲区溢出,应该被视为一个错误——这是故意的吗?我应该联系开发人员还是包维护人员?
我也很好奇——有人能重现这个问题吗?