diff --git a/src/tty/ntapi_tty_join_session.c b/src/tty/ntapi_tty_join_session.c index 77bcc3c..2bcefc4 100644 --- a/src/tty/ntapi_tty_join_session.c +++ b/src/tty/ntapi_tty_join_session.c @@ -17,10 +17,14 @@ int32_t __stdcall __ntapi_tty_join_session( nt_status status; ntapi_internals * __internals; - /* init */ + /* init, primary session semantics */ __internals = __ntapi_internals(); if (type == NT_TTY_SESSION_PRIMARY) { + if (__internals->rtdata) + if (__internals->rtdata->hsession) + return NT_STATUS_PORT_ALREADY_SET; + hport = hport ? hport : &__internals->hport_tty_session; port_name = port_name ? port_name : __internals->subsystem; }