mirror of
				https://github.com/tmux/tmux.git
				synced 2025-10-26 12:27:15 +00:00 
			
		
		
		
	Add cmd_find_from_winlink_pane and use it in a couple of places, and
make functions that can't fail void.
This commit is contained in:
		
							
								
								
									
										22
									
								
								cmd-find.c
									
									
									
									
									
								
							
							
						
						
									
										22
									
								
								cmd-find.c
									
									
									
									
									
								
							| @@ -879,7 +879,7 @@ cmd_find_log_state(const char *prefix, struct cmd_find_state *fs) | ||||
| } | ||||
|  | ||||
| /* Find state from a session. */ | ||||
| int | ||||
| void | ||||
| cmd_find_from_session(struct cmd_find_state *fs, struct session *s) | ||||
| { | ||||
| 	cmd_find_clear_state(fs, NULL, 0); | ||||
| @@ -890,11 +890,10 @@ cmd_find_from_session(struct cmd_find_state *fs, struct session *s) | ||||
| 	fs->wp = fs->w->active; | ||||
|  | ||||
| 	cmd_find_log_state(__func__, fs); | ||||
| 	return (0); | ||||
| } | ||||
|  | ||||
| /* Find state from a winlink. */ | ||||
| int | ||||
| void | ||||
| cmd_find_from_winlink(struct cmd_find_state *fs, struct winlink *wl) | ||||
| { | ||||
| 	cmd_find_clear_state(fs, NULL, 0); | ||||
| @@ -905,7 +904,6 @@ cmd_find_from_winlink(struct cmd_find_state *fs, struct winlink *wl) | ||||
| 	fs->wp = wl->window->active; | ||||
|  | ||||
| 	cmd_find_log_state(__func__, fs); | ||||
| 	return (0); | ||||
| } | ||||
|  | ||||
| /* Find state from a session and window. */ | ||||
| @@ -942,6 +940,22 @@ cmd_find_from_window(struct cmd_find_state *fs, struct window *w) | ||||
| 	return (0); | ||||
| } | ||||
|  | ||||
| /* Find state from a winlink and pane. */ | ||||
| void | ||||
| cmd_find_from_winlink_pane(struct cmd_find_state *fs, struct winlink *wl, | ||||
|     struct window_pane *wp) | ||||
| { | ||||
| 	cmd_find_clear_state(fs, NULL, 0); | ||||
|  | ||||
| 	fs->s = wl->session; | ||||
| 	fs->wl = wl; | ||||
| 	fs->idx = fs->wl->idx; | ||||
| 	fs->w = fs->wl->window; | ||||
| 	fs->wp = wp; | ||||
|  | ||||
| 	cmd_find_log_state(__func__, fs); | ||||
| } | ||||
|  | ||||
| /* Find state from a pane. */ | ||||
| int | ||||
| cmd_find_from_pane(struct cmd_find_state *fs, struct window_pane *wp) | ||||
|   | ||||
| @@ -172,12 +172,7 @@ cmd_split_window_exec(struct cmd *self, struct cmdq_item *item) | ||||
| 	if (to_free != NULL) | ||||
| 		free((void *)to_free); | ||||
|  | ||||
| 	cmd_find_clear_state(&fs, NULL, 0); | ||||
| 	fs.s = s; | ||||
| 	fs.wl = wl; | ||||
| 	fs.w = w; | ||||
| 	fs.wp = new_wp; | ||||
| 	cmd_find_log_state(__func__, &fs); | ||||
| 	cmd_find_from_winlink_pane(&fs, wl, new_wp); | ||||
| 	hooks_insert(s->hooks, item, &fs, "after-split-window"); | ||||
|  | ||||
| 	return (CMD_RETURN_NORMAL); | ||||
|   | ||||
| @@ -946,11 +946,7 @@ retry: | ||||
|  | ||||
| 		/* Find default state if the pane is known. */ | ||||
| 		if (KEYC_IS_MOUSE(key) && m->valid && wp != NULL) { | ||||
| 			cmd_find_clear_state(&fs, NULL, 0); | ||||
| 			fs.s = s; | ||||
| 			fs.wl = fs.s->curw; | ||||
| 			fs.w = fs.wl->window; | ||||
| 			fs.wp = wp; | ||||
| 			cmd_find_from_winlink_pane(&fs, s->curw, wp); | ||||
| 			cmd_find_log_state(__func__, &fs); | ||||
|  | ||||
| 			if (!cmd_find_valid_state(&fs)) | ||||
|   | ||||
							
								
								
									
										6
									
								
								tmux.h
									
									
									
									
									
								
							
							
						
						
									
										6
									
								
								tmux.h
									
									
									
									
									
								
							| @@ -1744,15 +1744,17 @@ int		 cmd_find_valid_state(struct cmd_find_state *); | ||||
| void		 cmd_find_copy_state(struct cmd_find_state *, | ||||
| 		     struct cmd_find_state *); | ||||
| void		 cmd_find_log_state(const char *, struct cmd_find_state *); | ||||
| int		 cmd_find_from_session(struct cmd_find_state *, | ||||
| void		 cmd_find_from_session(struct cmd_find_state *, | ||||
| 		     struct session *); | ||||
| int		 cmd_find_from_winlink(struct cmd_find_state *, | ||||
| void		 cmd_find_from_winlink(struct cmd_find_state *, | ||||
| 		     struct winlink *); | ||||
| int		 cmd_find_from_session_window(struct cmd_find_state *, | ||||
| 		     struct session *, struct window *); | ||||
| int		 cmd_find_from_window(struct cmd_find_state *, struct window *); | ||||
| int		 cmd_find_from_pane(struct cmd_find_state *, | ||||
| 		     struct window_pane *); | ||||
| void		 cmd_find_from_winlink_pane(struct cmd_find_state *, | ||||
| 		     struct winlink *, struct window_pane *); | ||||
|  | ||||
| /* cmd.c */ | ||||
| int		 cmd_pack_argv(int, char **, char *, size_t); | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 nicm
					nicm