File tree Expand file tree Collapse file tree 1 file changed +6
-10
lines changed
Expand file tree Collapse file tree 1 file changed +6
-10
lines changed Original file line number Diff line number Diff line change @@ -159,10 +159,10 @@ impl<T> GuiWrapper<T> {
159159}
160160
161161pub fn spawn_gui ( ) {
162- let signalled = Arc :: new ( AtomicBool :: new ( false ) ) ;
163- let r = signalled . clone ( ) ;
162+ let running = Arc :: new ( AtomicBool :: new ( true ) ) ;
163+ let r = running . clone ( ) ;
164164 ctrlc:: set_handler ( move || {
165- r. store ( true , Ordering :: SeqCst ) ;
165+ r. store ( false , Ordering :: SeqCst ) ;
166166 } )
167167 . expect ( "Error setting Ctrl-C handler" ) ;
168168
@@ -281,24 +281,20 @@ pub fn spawn_gui() {
281281 backend. run ( ) ;
282282 } ) ;
283283
284- loop {
285- if signalled. load ( Ordering :: SeqCst ) {
286- webview. into_inner ( ) ;
287- break ;
288- }
289-
284+ while running. load ( Ordering :: SeqCst ) {
290285 match webview. step ( ) {
291286 Some ( Ok ( _) ) => ( ) ,
292287 Some ( e) => {
293288 eprintln ! ( "Error: {:?}" , e) ;
294289 }
295290 None => {
296- webview. into_inner ( ) ;
297291 break ;
298292 }
299293 }
300294 }
301295
296+ webview. into_inner ( ) ;
297+
302298 bg. join ( ) . expect ( "background thread" ) ;
303299}
304300
You can’t perform that action at this time.
0 commit comments