File tree Expand file tree Collapse file tree 5 files changed +16
-9
lines changed
Expand file tree Collapse file tree 5 files changed +16
-9
lines changed Original file line number Diff line number Diff line change @@ -23,6 +23,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
2323
2424### Fixed
2525- keep diff line selection after staging/unstaging/discarding ([ #583 ] ( https://github.com/extrawurst/gitui/issues/583 ) )
26+ - fix pull deadlocking when aborting credentials input ([ #586 ] ( https://github.com/extrawurst/gitui/issues/586 ) )
2627
2728## [ 0.12.0] - 2020-03-03
2829
Original file line number Diff line number Diff line change @@ -105,7 +105,9 @@ impl Component for CredComponent {
105105 if let Event :: Key ( e) = ev {
106106 if e == self . key_config . exit_popup {
107107 self . hide ( ) ;
108+ return Ok ( true ) ;
108109 }
110+
109111 if self . input_username . event ( ev) ?
110112 || self . input_password . event ( ev) ?
111113 {
@@ -139,6 +141,7 @@ impl Component for CredComponent {
139141 }
140142 }
141143 }
144+
142145 return Ok ( true ) ;
143146 }
144147 Ok ( false )
Original file line number Diff line number Diff line change @@ -257,9 +257,10 @@ impl Component for PullComponent {
257257 if self . visible {
258258 if let Event :: Key ( _) = ev {
259259 if self . input_cred . is_visible ( ) {
260- if self . input_cred . event ( ev) ? {
261- return Ok ( true ) ;
262- } else if self . input_cred . get_cred ( ) . is_complete ( )
260+ self . input_cred . event ( ev) ?;
261+
262+ if self . input_cred . get_cred ( ) . is_complete ( )
263+ || !self . input_cred . is_visible ( )
263264 {
264265 self . fetch_from_remote ( Some (
265266 self . input_cred . get_cred ( ) . clone ( ) ,
Original file line number Diff line number Diff line change @@ -253,9 +253,10 @@ impl Component for PushComponent {
253253 if self . visible {
254254 if let Event :: Key ( e) = ev {
255255 if self . input_cred . is_visible ( ) {
256- if self . input_cred . event ( ev) ? {
257- return Ok ( true ) ;
258- } else if self . input_cred . get_cred ( ) . is_complete ( )
256+ self . input_cred . event ( ev) ?;
257+
258+ if self . input_cred . get_cred ( ) . is_complete ( )
259+ || !self . input_cred . is_visible ( )
259260 {
260261 self . push_to_remote (
261262 Some ( self . input_cred . get_cred ( ) . clone ( ) ) ,
Original file line number Diff line number Diff line change @@ -227,9 +227,10 @@ impl Component for PushTagsComponent {
227227 if self . visible {
228228 if let Event :: Key ( e) = ev {
229229 if self . input_cred . is_visible ( ) {
230- if self . input_cred . event ( ev) ? {
231- return Ok ( true ) ;
232- } else if self . input_cred . get_cred ( ) . is_complete ( )
230+ self . input_cred . event ( ev) ?;
231+
232+ if self . input_cred . get_cred ( ) . is_complete ( )
233+ || !self . input_cred . is_visible ( )
233234 {
234235 self . push_to_remote ( Some (
235236 self . input_cred . get_cred ( ) . clone ( ) ,
You can’t perform that action at this time.
0 commit comments