• Skip to sidebar navigation
  • Skip to content

Bitbucket

  • More
    ProjectsRepositories
  • Help
    • Online help
    • Learn Git
    • Welcome to Bitbucket
    • Keyboard shortcuts
  • Log In
Alexander Dahl
  1. Alexander Dahl

buildroot

Public
Actions
  • Clone
  • Compare

Learn more about cloning repositories

You have read-only access

Navigation
  • Source
  • Commits
  • Branches
  • All Branches Graph
  • Forks
  1. Alexander Dahl
  2. buildroot

Source

buildroot/package/readline/readline52-005.patch
Lionel LandwerlinLionel Landwerlin committed fe6e67ba96b27 Jan 2010
Raw file
Source viewDiff to previous
!   c = _rl_vi_last_search_mblen = _rl_read_mbchar (_rl_vi_last_search_mbchar, MB_LEN_MAX);
 
1
               READLINE PATCH REPORT
2
               =====================
3
​
4
Readline-Release: 5.2
5
Patch-ID: readline52-005
6
​
7
Bug-Reported-by:        Thomas Loeber <ifp@loeber1.de>
8
Bug-Reference-ID:       <200703082223.08919.ifp@loeber1.de>
9
Bug-Reference-URL:  http://lists.gnu.org/archive/html/bug-bash/2007-03/msg00036.html
10
​
11
Bug-Description:
12
​
13
When rl_read_key returns -1, indicating that readline's controlling terminal
14
has been invalidated for some reason (e.g., receiving a SIGHUP), the error
15
status was not reported correctly to the caller.  This could cause input
16
loops. 
17
​
18
Patch:
19
​
20
*** ../readline-5.2/complete.c  Fri Jul 28 11:35:49 2006
21
--- ./complete.c    Tue Mar 13 08:50:16 2007
22
***************
23
*** 429,433 ****
24
        if (c == 'n' || c == 'N' || c == RUBOUT)
25
    return (0);
26
!       if (c == ABORT_CHAR)
27
    _rl_abort_internal ();
28
        if (for_pager && (c == NEWLINE || c == RETURN))
29
--- 440,444 ----
30
        if (c == 'n' || c == 'N' || c == RUBOUT)
31
    return (0);
32
!       if (c == ABORT_CHAR || c < 0)
33
    _rl_abort_internal ();
34
        if (for_pager && (c == NEWLINE || c == RETURN))
35
*** ../readline-5.2/input.c Wed Aug 16 15:15:16 2006
36
--- ./input.c   Wed May  2 16:07:59 2007
37
***************
38
*** 514,518 ****
39
       int size;
40
  {
41
!   int mb_len = 0;
42
    size_t mbchar_bytes_length;
43
    wchar_t wc;
44
--- 522,526 ----
45
       int size;
46
  {
47
!   int mb_len, c;
48
    size_t mbchar_bytes_length;
49
    wchar_t wc;
50
***************
51
*** 521,531 ****
52
    memset(&ps, 0, sizeof (mbstate_t));
53
    memset(&ps_back, 0, sizeof (mbstate_t));
54
!   
55
    while (mb_len < size)
56
      {
57
        RL_SETSTATE(RL_STATE_MOREINPUT);
58
!       mbchar[mb_len++] = rl_read_key ();
59
        RL_UNSETSTATE(RL_STATE_MOREINPUT);
60
  
61
        mbchar_bytes_length = mbrtowc (&wc, mbchar, mb_len, &ps);
62
        if (mbchar_bytes_length == (size_t)(-1))
63
--- 529,545 ----
  • Git repository management for enterprise teams powered by Atlassian Bitbucket
  • Atlassian Bitbucket v6.7.2
  • Documentation
  • Request a feature
  • About
  • Contact Atlassian
Atlassian

Everything looks good. We'll let you know here if there's anything you should know about.