mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	fix(api): crash on invalid buffer to nvim_buf_del_user_command (#31908)
This commit is contained in:
		| @@ -931,6 +931,9 @@ void nvim_buf_del_user_command(Buffer buffer, String name, Error *err) | ||||
|     gap = &ucmds; | ||||
|   } else { | ||||
|     buf_T *buf = find_buffer_by_handle(buffer, err); | ||||
|     if (ERROR_SET(err)) { | ||||
|       return; | ||||
|     } | ||||
|     gap = &buf->b_ucmds; | ||||
|   } | ||||
|  | ||||
|   | ||||
| @@ -651,6 +651,11 @@ describe('nvim_create_user_command', function() | ||||
|     api.nvim_set_current_buf(bufnr) | ||||
|     command('Hello') | ||||
|     assert_alive() | ||||
|     eq( | ||||
|       'Invalid buffer id: 1234', | ||||
|       pcall_err(api.nvim_buf_create_user_command, 1234, 'Hello', '', {}) | ||||
|     ) | ||||
|     assert_alive() | ||||
|   end) | ||||
|  | ||||
|   it('can use a Lua complete function', function() | ||||
| @@ -771,5 +776,9 @@ describe('nvim_del_user_command', function() | ||||
|     command('Hello') | ||||
|     api.nvim_buf_del_user_command(0, 'Hello') | ||||
|     matches('Not an editor command: Hello', pcall_err(command, 'Hello')) | ||||
|     eq('Invalid command (not found): Hello', pcall_err(api.nvim_buf_del_user_command, 0, 'Hello')) | ||||
|     eq('Invalid command (not found): Bye', pcall_err(api.nvim_buf_del_user_command, 0, 'Bye')) | ||||
|     eq('Invalid buffer id: 1234', pcall_err(api.nvim_buf_del_user_command, 1234, 'Hello')) | ||||
|     assert_alive() | ||||
|   end) | ||||
| end) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 zeertzjq
					zeertzjq