aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/os/pty_process_win.h
diff options
context:
space:
mode:
authorBjörn Linse <bjorn.linse@gmail.com>2020-01-17 12:59:50 +0100
committerGitHub <noreply@github.com>2020-01-17 12:59:50 +0100
commitfd89ad7bfb1534c42c99b36ca025ea42ccbee7e1 (patch)
treee9a50ea156867a93c3031e09c6d85573d8c397e7 /src/nvim/os/pty_process_win.h
parent8fe0635e7338e32e8aedeb8f2e2c0f246876375c (diff)
parent1e4f29069146cbab0be0559d87e399aefa433a29 (diff)
downloadrneovim-fd89ad7bfb1534c42c99b36ca025ea42ccbee7e1.tar.gz
rneovim-fd89ad7bfb1534c42c99b36ca025ea42ccbee7e1.tar.bz2
rneovim-fd89ad7bfb1534c42c99b36ca025ea42ccbee7e1.zip
Merge pull request #11390 from erw7/feature-conpty
win/Terminal: Change to use ConPTY, if available
Diffstat (limited to 'src/nvim/os/pty_process_win.h')
-rw-r--r--src/nvim/os/pty_process_win.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/src/nvim/os/pty_process_win.h b/src/nvim/os/pty_process_win.h
index 1a4019e654..8ad5ba7286 100644
--- a/src/nvim/os/pty_process_win.h
+++ b/src/nvim/os/pty_process_win.h
@@ -6,12 +6,22 @@
#include "nvim/event/process.h"
#include "nvim/lib/queue.h"
+#include "nvim/os/pty_conpty_win.h"
+
+typedef enum {
+ kWinpty,
+ kConpty
+} PtyType;
typedef struct pty_process {
Process process;
char *term_name;
uint16_t width, height;
- winpty_t *winpty_object;
+ union {
+ winpty_t *winpty;
+ conpty_t *conpty;
+ } object;
+ PtyType type;
HANDLE finish_wait;
HANDLE process_handle;
uv_timer_t wait_eof_timer;
@@ -30,7 +40,8 @@ static inline PtyProcess pty_process_init(Loop *loop, void *data)
rv.term_name = NULL;
rv.width = 80;
rv.height = 24;
- rv.winpty_object = NULL;
+ rv.object.winpty = NULL;
+ rv.type = kWinpty;
rv.finish_wait = NULL;
rv.process_handle = NULL;
return rv;