mirror of
				https://github.com/neovim/neovim.git
				synced 2025-10-26 12:27:24 +00:00 
			
		
		
		
	 df019cebd5
			
		
	
	df019cebd5
	
	
	
		
			
			This change exposed a memory issue with buffered channels, possibly
involving GC. Revert until it has been fixed.
This reverts commit 0de019b6a6.
		
	
		
			
				
	
	
		
			21 lines
		
	
	
		
			500 B
		
	
	
	
		
			VimL
		
	
	
	
	
	
			
		
		
	
	
			21 lines
		
	
	
		
			500 B
		
	
	
	
		
			VimL
		
	
	
	
	
	
| " Common functionality for providers
 | |
| 
 | |
| let s:stderr = {}
 | |
| 
 | |
| function! provider#stderr_collector(chan_id, data, event)
 | |
|    let stderr = get(s:stderr, a:chan_id, [''])
 | |
|    let stderr[-1] .= a:data[0]
 | |
|    call extend(stderr, a:data[1:])
 | |
|    let s:stderr[a:chan_id] = stderr
 | |
| endfunction
 | |
| 
 | |
| function! provider#clear_stderr(chan_id)
 | |
|   if has_key(s:stderr, a:chan_id)
 | |
|     call remove(s:stderr, a:chan_id)
 | |
|   endif
 | |
| endfunction
 | |
| 
 | |
| function! provider#get_stderr(chan_id)
 | |
|    return get(s:stderr, a:chan_id, [])
 | |
| endfunction
 |