mirror of
				https://github.com/labwc/labwc.git
				synced 2025-10-29 05:40:24 -04:00 
			
		
		
		
	labnag: return special value on timeout
...to avoid taking either of the <then> or <else> branches on timeout.
This commit is contained in:
		
							parent
							
								
									073fd02300
								
							
						
					
					
						commit
						09b4e9605e
					
				
					 4 changed files with 16 additions and 3 deletions
				
			
		|  | @ -29,13 +29,12 @@ | |||
| #include <wayland-client.h> | ||||
| #include <wayland-cursor.h> | ||||
| #include <wlr/util/log.h> | ||||
| #include "action-prompt-codes.h" | ||||
| #include "pool-buffer.h" | ||||
| #include "cursor-shape-v1-client-protocol.h" | ||||
| #include "wlr-layer-shell-unstable-v1-client-protocol.h" | ||||
| 
 | ||||
| #define LABNAG_MAX_HEIGHT 500 | ||||
| #define LAB_EXIT_FAILURE 255 | ||||
| #define LAB_EXIT_SUCCESS 0 | ||||
| 
 | ||||
| struct conf { | ||||
| 	PangoFontDescription *font_description; | ||||
|  | @ -1239,6 +1238,7 @@ nag_run(struct nag *nag) | |||
| 			wl_display_cancel_read(nag->display); | ||||
| 		} | ||||
| 		if (nag->pollfds[FD_TIMER].revents & POLLIN) { | ||||
| 			exit_status = LAB_EXIT_TIMEOUT; | ||||
| 			break; | ||||
| 		} | ||||
| 		if (nag->pollfds[FD_SIGNAL].revents & POLLIN) { | ||||
|  |  | |||
|  | @ -50,6 +50,7 @@ executable( | |||
|     server_protos, | ||||
|     epoll_dep, | ||||
|   ], | ||||
|   include_directories: [labwc_inc], | ||||
| 	install: true | ||||
| ) | ||||
| 
 | ||||
|  |  | |||
							
								
								
									
										9
									
								
								include/action-prompt-codes.h
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										9
									
								
								include/action-prompt-codes.h
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,9 @@ | |||
| /* SPDX-License-Identifier: GPL-2.0-only */ | ||||
| #ifndef LABWC_ACTION_PROMPT_CODES_H | ||||
| #define LABWC_ACTION_PROMPT_CODES_H | ||||
| 
 | ||||
| #define LAB_EXIT_FAILURE 255 | ||||
| #define LAB_EXIT_TIMEOUT 254 | ||||
| #define LAB_EXIT_SUCCESS 0 | ||||
| 
 | ||||
| #endif /* LABWC_ACTION_PROMPT_CODES_H */ | ||||
|  | @ -8,6 +8,7 @@ | |||
| #include <unistd.h> | ||||
| #include <wlr/types/wlr_scene.h> | ||||
| #include <wlr/util/log.h> | ||||
| #include "action-prompt-codes.h" | ||||
| #include "common/macros.h" | ||||
| #include "common/list.h" | ||||
| #include "common/mem.h" | ||||
|  | @ -860,9 +861,11 @@ action_check_prompt_result(pid_t pid, int exit_code) | |||
| 
 | ||||
| 		wlr_log(WLR_INFO, "Found pending prompt for exit code %d", exit_code); | ||||
| 		struct wl_list *actions = NULL; | ||||
| 		if (exit_code == 0) { | ||||
| 		if (exit_code == LAB_EXIT_SUCCESS) { | ||||
| 			wlr_log(WLR_INFO, "Selected the 'then' branch"); | ||||
| 			actions = action_get_actionlist(prompt->action, "then"); | ||||
| 		} else if (exit_code == LAB_EXIT_TIMEOUT) { | ||||
| 			/* no-op */ | ||||
| 		} else { | ||||
| 			wlr_log(WLR_INFO, "Selected the 'else' branch"); | ||||
| 			actions = action_get_actionlist(prompt->action, "else"); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Johan Malm
						Johan Malm