<<< Date Index >>>     <<< Thread Index >>>

[Mutt] #3414: Mutt doesn't notice window resize in Emacs



#3414: Mutt doesn't notice window resize in Emacs
---------------------+------------------------------------------------------
 Reporter:  vinc17   |       Owner:  mutt-dev
     Type:  defect   |      Status:  new     
 Priority:  minor    |   Milestone:          
Component:  display  |     Version:          
 Keywords:           |  
---------------------+------------------------------------------------------
 When I run Mutt in Emacs, Mutt doesn't notice window resize immediately
 (even though a SIGWINCH is sent). I need a Ctrl-L.

 {{{$ emacs23 -q -l emacs-mutt.el}}}

 with emacs-mutt.el containing:
 {{{
 (set-buffer (apply 'make-term "Mutt" "mutt" nil command-line-args-left))
 (setq command-line-args-left nil)
 (term-mode)
 (term-char-mode)
 (switch-to-buffer "*Mutt*")
 }}}

 I did a {{{strace -p<pid>}}} before the window resize, and I got (until I
 quit Mutt):

 {{{
 restart_syscall(<... resuming interrupted call ...>) = 1
 read(0, "x", 1)                         = 1
 rt_sigaction(SIGINT, {0x469e10, [], SA_RESTORER|SA_RESTART,
 0x7fc3ef9f6f80}, NULL, 8) = 0
 write(1, "\r\33[32B\33[36m\33[40m\33[1mExit Mutt wi"..., 79) = 79
 rt_sigaction(SIGINT, {0x469e10, [], SA_RESTORER, 0x7fc3ef9f6f80}, NULL, 8)
 = 0
 read(0, 0x7fff37b4c3df, 1)              = ? ERESTARTSYS (To be restarted)
 --- SIGWINCH (Window changed) @ 0 (0) ---
 rt_sigreturn(0x1c)                      = 0
 read(0, "y", 1)                         = 1
 rt_sigaction(SIGINT, {0x469e10, [], SA_RESTORER|SA_RESTART,
 0x7fc3ef9f6f80}, NULL, 8) = 0
 write(1, "\33[37m\33[40m\33[1myes\33[m\33[39;49m\33[37"..., 38) = 38
 write(1, "\r\33[37m\33[40m\33[1m                 "..., 78) = 78
 write(1, "\33[39;49m\33[K\33[33;1H\r", 19) = 19
 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig -icanon -echo
 ...}) = 0
 ioctl(1, SNDCTL_TMR_STOP or TCSETSW, {B38400 opost isig icanon echo ...})
 = 0
 ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo
 ...}) = 0
 write(1, "Exit Mutt without saving? ([no]/"..., 39) = 39
 exit_group(0)                           = ?
 }}}

 Tested version: my own patched version based on trunk.

-- 
Ticket URL: <http://dev.mutt.org/trac/ticket/3414>
Mutt <http://www.mutt.org/>
The Mutt mail user agent