[CC Takashi] On Aug 29 22:15, Biswapriyo Nath wrote: > On Thursday, August 29, 2019, Corinna Vinschen > wrote: > > Support the new pseudo console in PTY. Pseudo console is a new feature > in Windows 10 1809, which provides console APIs on virtual terminal. > > Some queries about this specific feature: Please note that this is very likely not the final version. I'm planning for a release end of october or early november so there's still lots of time to fix issues. However, this is a great new feature which needs good testing, that's why we do these test releases. > 1a. In fhandler_pty_mater::ioctl function, shouldn't the function pointer > be checked before use? Also what the FIXME says, isn't clear. Any hint? Yeah, right. What happens on pre-W10 1809 systems? They probably crash on TIOCSWINSZ. See below. > 1b. GetModuleHandle and GetProcessHeap is called several times. Wouldn't be > it easier to get all the pseudo console function pointers in one > constructor? In terms of GetModuleHandle/GetProcAddress the right thing to do is to use the autoload feature, i.e., add the functions to autoload.cc like this: LoadDLLfuncEx (ClosePseudoConsole, 4, kernel32, 1) LoadDLLfuncEx (CreatePseudoConsole, 20, kernel32, 1) LoadDLLfuncEx (ResizePseudoConsole, 8, kernel32, 1) If the function call returns FALSE with GetLastError() == ERROR_PROC_NOT_FOUND, then the function is not available. Takashi, I didn't actually notice the usage of the Windows heap here. The usual method is to use a tls_pbuf buffer, and rather than using MultiByteToWideChar/WideCharToMultiByte, use sys_mbstowcs/ sys_wcstombs. Also, can you please change the camelback names in class tty_min to underscored writing, e.g., term_codepage rather than TermCodePage? > 2. There are many defined values are added but those are also present in > mingw-w64 current git repo. For example, ENABLE_VIRTUAL_TERMINAL_PROCESSING. We can only use what's part of the current w32api-headers package. > 3. I can't reproduce this issue with exact steps. But when I zoom in/out + > resize mintty window + execute cmd.exe in mintty in some random order it > crashed. Here is the error: > > [main] D:\Cygwin64\bin\bash 1129 > fhandler_pty_slave::push_to_pcon_screenbuffer: pty0: pcon_attach > mismatch?????? (0x18035DBD0) Takashi? Thanks, Corinna -- Corinna Vinschen Cygwin Maintainer