diff options
Diffstat (limited to 'src/channel.c')
-rw-r--r-- | src/channel.c | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/channel.c b/src/channel.c index 08b1ac8670..4e6457546a 100644 --- a/src/channel.c +++ b/src/channel.c @@ -2872,8 +2872,14 @@ append_to_buffer(buf_T *buffer, char_u *msg, channel_T *channel, ch_part_T part) buffer->b_p_ma = TRUE; - // set curbuf to be our buf, temporarily + // Set curbuf to "buffer", temporarily. aucmd_prepbuf(&aco, buffer); + if (curbuf != buffer) + { + // Could not find a window for this buffer, the following might cause + // trouble, better bail out. + return; + } u_sync(TRUE); // ignore undo failure, undo is not very useful here |