Bug 59171
Summary: | Delete key in slrn's line editor results in endles series of bells | ||
---|---|---|---|
Product: | [Retired] Red Hat Linux | Reporter: | stu32893 |
Component: | slang | Assignee: | Bill Nottingham <notting> |
Status: | CLOSED RAWHIDE | QA Contact: | |
Severity: | low | Docs Contact: | |
Priority: | medium | ||
Version: | 7.2 | CC: | jorton, rvokal |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | i386 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | Bug Fix | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2002-05-28 15:50:54 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
stu32893
2002-02-01 13:19:58 UTC
Modification: Problem apparently results from incorrect delete key configuration. Putting 'setkey readline del "^[[3~" in the slrn config file solves it. But since the problem is present when using RH 7.2's original S-Lang 1.4.4 and slrn 0.9.7.1 packages, I still consider it a bug. I have a similar problem with a pager called most. Pressing any key which is NOT used by the program causes it to go into an infinite beeping loop. Downgrading slang to the version shipped with RH 7.1 fixes the problem. Recompiling and relinking to the newer version of slang does not fix it. This would certainly appear to be a bug in slang-1.4.4-4 which was not in slang-1.4.2-2. The problem is still present in RH 7.3 and is not present in the pristine sources. The patch slang-1.4.5-keymap.patch changes the function SLang_do_key so that if a key is hit which is not defined, that key is unget again. So the next call to SLang_do_key tries to get the same key which is unget once again. The result is an infinite loop as the application keeps getting the same key which is not defined over and over. This is definitely a bug, which has, I suspect, been introduced into slang as a workaround to solve a problem in a buggy application. The documentation says quite clearly that SLang_do_key should return NULL if the key is not defined and not that it should unget the key. This is hardly what one would intuitively expect and it breaks other applications. The fix is simply to remove the patch and fix whatever application caused the patch to be added in the first place. Patch removed in 1.4.5-4. |