Ticket #213 (closed defect: fixed)

Opened 10 years ago

Last modified 5 years ago

[mc-ru-fork] patch for fix bug 'The shell is already running a command'

Reported by: slavazanko Owned by: slavazanko
Priority: blocker Milestone: 4.7.0-pre4
Component: mc-core Version: 4.6.1
Keywords: Cc: r0polach@…, mantas@…, midenok@…
Blocked By: Blocking:
Branch state: merged Votes for changeset: committed-master

Description

Test case:

  • run mc
  • press CTRL+o (hide panels)
  • press 'space' key
  • press 'backspace' key
  • press CTRL+o (show panels)
  • type 'ls' and press 'enter' key

Attachments

213_busy_shell.001.patch (1.0 KB) - added by slavazanko 10 years ago.
mc_poc.diff (8.3 KB) - added by midenok 10 years ago.
Busy shell and stacked prompt glitches fix (proof of concept)

Change History

comment:1 Changed 10 years ago by slavazanko

  • Owner set to slavazanko
  • Status changed from new to accepted
  • Keywords review added
  • Milestone changed from 4.7 to 4.6.2

Created branch '213_busy_shell'; parent branch: mc-4.6

Also, patch 213_busy_shell.001.patch attached.

Review, please.

Changed 10 years ago by slavazanko

comment:2 Changed 10 years ago by slavazanko

This not good fix, I know. But at this time no better variants... therefore this patch I propose for fix issue with 'busy shell'.

comment:3 Changed 10 years ago by styx

  • Keywords vote-styx added

comment:4 Changed 10 years ago by winnie

  • Keywords rework added; review vote-styx removed

Sorry no vote from me.. this patch should be reworked as it's a hack. We should try to fix this issue really and do not try to fix it in a hackish way.

Please rework it.

comment:5 Changed 10 years ago by styx

  • Priority changed from major to blocker
  • Milestone changed from 4.6.2 to 4.6.3

moved to 4.6.3 to release 4.6.2 faster
this is a blocking bug

comment:6 Changed 10 years ago by r0polach

  • Cc r0polach@… added

comment:7 Changed 10 years ago by slyfox

  • Milestone changed from 4.6.2.1 to 4.6.3

comment:8 Changed 10 years ago by slyfox

Moving to 4.6.3 as 4.6.2.1 is a primarily build fix release

comment:9 Changed 10 years ago by mantas

  • Cc mantas@… added

comment:10 Changed 10 years ago by slavazanko

  • Milestone changed from 4.6.3 to 4.7

comment:11 Changed 10 years ago by angel_il

  • Milestone changed from 4.7 to 4.7.0-pre1

comment:12 Changed 10 years ago by angel_il

  • Milestone changed from 4.7.0-pre1 to 4.7

Changed 10 years ago by midenok

Busy shell and stacked prompt glitches fix (proof of concept)

comment:13 Changed 10 years ago by midenok

  • severity set to no branch

mc_poc.diff fixes busy shell glitch, but is not ready for production merging because:

  • it is only for bash;
  • subshell state names, pipe names are not good;
  • probably state logic should be reworked, states count reduced and variable subshell_ready removed;
  • there is no need to send $BASH_COMMAND on pipe, it was used for debugging;
  • quick hack for 'stacked prompts bug' use direct ANSI codes. Probably should use ncurses or slang (slang is a bit clumsy for this);
  • wrong style (uses spaces instead of tabs);

But this patch works good at least in my tests and my serve as a base to a nicer fix.

comment:14 Changed 10 years ago by midenok

  • Cc midenok@… added

comment:15 Changed 10 years ago by slavazanko

  • Milestone changed from 4.7 to 4.7.0-pre4

I think, time to close this epic bug :)

comment:16 Changed 10 years ago by andrew_b

  • Keywords rework removed

comment:17 Changed 10 years ago by slavazanko

recreated branch 213_busy_shell

initial changeset:4db3447eedb1e362376b9a09d8a903c55bef0b14

Fix issue: Now 'busy shell' status toggle on if user will press 'Enter' key.
Old behavior: User was press any key into subshell and 'busy shell' status toggle on.

Also, patch will enter new behavior:

  • run mc
  • press ctrl+o (hide panels)
  • type 'cat ' and don't press 'Enter' key
  • press ctrl+o (show panels)
  • type 'ls' and press enter

You'll see:

 cat: ls: File not found.

Review, please.

comment:18 Changed 10 years ago by slavazanko

  • severity changed from no branch to on review

comment:19 Changed 10 years ago by andrew_b

  • Votes for changeset set to andrew_b

changeset:4db3447eedb1e362376b9a09d8a903c55bef0b14

Cool! It really works! My vote here.

comment:20 Changed 10 years ago by iNode

  • Votes for changeset changed from andrew_b to andrew_b iNode
  • severity changed from on review to approved

Interesting idea... Thanks!

comment:21 Changed 10 years ago by slavazanko

  • Status changed from accepted to testing
  • Votes for changeset changed from andrew_b iNode to commited-master
  • Resolution set to fixed
  • severity changed from approved to merged

comment:22 Changed 10 years ago by slavazanko

  • Status changed from testing to closed

comment:23 Changed 5 years ago by ossi

  • Branch state set to no branch

resulted in #2110

comment:24 Changed 5 years ago by andrew_b

  • Branch state changed from no branch to merged
Note: See TracTickets for help on using tickets.