From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mout.kundenserver.de (mout.kundenserver.de [217.72.192.73]) by sourceware.org (Postfix) with ESMTPS id 5331E3851C36 for ; Tue, 26 May 2020 07:14:43 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 5331E3851C36 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=towo.net Authentication-Results: sourceware.org; spf=none smtp.mailfrom=towo@towo.net Received: from [192.168.178.45] ([95.90.245.244]) by mrelayeu.kundenserver.de (mreue106 [212.227.15.183]) with ESMTPSA (Nemesis) id 1MkIEJ-1jB3n62a4n-00kiyg for ; Tue, 26 May 2020 09:14:41 +0200 Subject: Re: New implementation of pseudo console support (experimental) To: cygwin-developers@cygwin.com References: <20200513211609.011d188c3a735b00d55591df@nifty.ne.jp> <20200514182859.c5236a8889ab3081d2e8c937@nifty.ne.jp> <20200514183420.c246647a6d9e396d42c6b47e@nifty.ne.jp> <20200516092956.74369d694d611b1dcd095607@nifty.ne.jp> <20200516164735.2a2ef183788b151e9185ef41@nifty.ne.jp> <20200519224018.746f6324badd8a5762df42b1@nifty.ne.jp> <20200525195332.cf60ab2f38d167a76513740e@nifty.ne.jp> <20200525152204.GF6801@calimero.vinschen.de> <20200526100054.a251f799b4bde225edb8596b@nifty.ne.jp> From: Thomas Wolff X-Tagtoolbar-Keys: D20200526091439533 Message-ID: <364f033d-a3e2-3031-6db8-9b2d135d48a3@towo.net> Date: Tue, 26 May 2020 09:14:39 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.8.0 MIME-Version: 1.0 In-Reply-To: <20200526100054.a251f799b4bde225edb8596b@nifty.ne.jp> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K1:iAJ7RtYbuT0u6gW/mlTeUd6sFLfrcsHyTYwAK6gaXVMPo5BDLu4 2ItcR3W5uZQSLGtu7JOZqRCNlYjwgR32DWdb2fbTGrXpCM8YQ5MVu+xAvl+U/T6m6JS5Ae+ 9Q0NpEYarYmvT4x6z9vn5rZTg8+kWuyZC9lmWApGKWtVNGHHEV+kNnOea2yZWxbg9+grlFP V5vxPn5sr1ex/l48dNj7A== X-UI-Out-Filterresults: notjunk:1;V03:K0:1QHUkBMoT+A=:IYCBkgJytWFAj6Gm9Jtj+5 nMTRsjcDI4h40TgZ/iG23pqn1E4kz9EzxKeq/BSaekuEeYSKVyRN8kXfUYi0mzCAbJ9j8c53E EGaIuj6DehoMLqkbAVw7nKXTyg7JXzq7SbhftjnQkgkmJz6NnVt26AtykBvGQhPGODpUpXpYM ooKZ+CAVe2vLirDIt08Jia+kpkj+CtA5t+6BW9eD/Yn6Dkzlhg2iZLfxX2jchV1OzZPDa0SNG ooW+6lIqPvYDlHQ1drYu9O/14K019AixXUF6wUaBq/Jsp/HW4L1wus/Fy5nfGc81CNVzycr6u YXCjCYAp4F4HB3swDxOWCSMe8kaK7WUbUtPsq3K9IOlN5XqeBW4Vtqecz7k2vaO1aLjjx0V/T CPapFNJ9D0GfX6QMKCV3X6aW8NrqAGY4Tz4ReHSjx0Q0TvwwoFMwmPkln5HcJuYI1eV7OkOQ/ 21rIzL/urHNKwN9eeq7i/w66fiFM4Nvfx3Vza7LGhjuHuCJ1U/0+bsQjBekKP0RRAQZiyl+Os PExtnCP9vMJfLE1/VghLMmbAJ4y6sOFHQgChiG0ZN5yxTUKh7hTM5kbCgsLdawt4cWB/ImbM5 7hUW/zCPyDlibAPOp/246SbpLEJZ/tDz+mvjm9JE27qGqMYGl108GefHJyb3uVHoD86UFgFEG LfBPzlU1SGDIolZC6GIDfGOrNgcCJfzNMYvmQZPy9DbH/1ZVk4ziUUpkDqr/sLntlF9S3BkTZ GLQGr4Ztt4HRAKbumEJoyIiHwZJOCO4wPoWFuoC6df+PqsENcZIad/nEm/nVW8++atWucFTkO bl6hyZ7of2c9TFT+O3dq8aFnmxNinUP+xhnCbxjsWxL/Kybaog= X-Spam-Status: No, score=-8.6 required=5.0 tests=BAYES_00, KAM_DMARC_STATUS, KAM_LAZY_DOMAIN_SECURITY, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_NONE, SPF_NONE, TXREP autolearn=no autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on server2.sourceware.org X-BeenThere: cygwin-developers@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin core component developers mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 26 May 2020 07:14:45 -0000 Am 26.05.2020 um 03:00 schrieb Takashi Yano via Cygwin-developers: > On Mon, 25 May 2020 17:22:04 +0200 > Corinna Vinschen wrote: >> Works fine for me, but I have only a limited test scenario. > Thank you very much for testing. > >> In terms of the remaining disadvantages: >> >> 3) The cygwin program which call console API directly does not work. >> >> I don't see a problem here. > If the code below is compiled with cygwin gcc, it does not work. > > #include > int main() > { > WriteConsole(GetStdHandle(STD_OUTPUT_HANDLE), "AAA\r\n", 5, NULL, 0); > return 0; > } This works for me. > However, this does not work also in cygwin 3.0.7, so it does not > matter for the app which works in cygwin 3.0.7. > >> 4) The apps which use console API cannot be debugged with gdb. >> >> Do you mean Cygwin apps or native apps? I assume native apps >> because of disadvantage 3... > I mean native apps. If the process is executed by gdb, pseudo > console is not activated since gdb use CreateProcess() rather > than exec(). > >> Does that mean you can't even debug by attaching (via PID)? > Attaching gdb to native apps, in which pseudo console is > already activated, should work. > >> 5) Type ahead key inputs are discarded while native console app is >> executed. >> >> Hmm, not muchg of a problem, I think. >> >> 7) Code page cannot be changed by chcp.com. >> >> I fail to see the exact drawback here. I don't think a lot of users >> use chcp, but of course I could be wrong. I'd also be curious why >> chcp doesn't work. > Please note that pseudo console is created for each native > console app in this implementation. Acctually, chcp works > itself and changes code page of its own pseudo console. > However, since pseudo console is recreated for another > process, which does not inherit the code page. >