public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
From: Takashi Yano <takashi.yano@nifty.ne.jp>
To: cygwin@cygwin.com
Subject: Re: makecab.exe hangs on cygwin 3.1
Date: Fri, 10 Jan 2020 11:51:00 -0000	[thread overview]
Message-ID: <20200110205107.fa2cab25a9bf9607cd92752e@nifty.ne.jp> (raw)
In-Reply-To: <97c2e912-8f7d-8ca8-8f7c-bbfaeec26b39@collabora.com>

On Thu, 9 Jan 2020 20:21:46 +0300
Mike Kaganski wrote:
> Using cygwin 3.1.2-1, I get a hang running a makecab.exe job started 
> from a perl script.
> 
> The version of perl is 5.26.3-2; Windows 10.0.18363 x64.
> 
> I was able to create a minimal reproducer in perl:
> 
> ############
> 
> select STDERR; # non-buffering output - just to see printed messages
> print "Preparing 80 MiB of random data... ";
> open my $randfile, '<:raw', "/dev/random" or die;
> open my $testbin, '>:raw', "test.bin" or die;
> for ( my $i = 0; $i < 20480; $i++ )
> {
>      my $buf = '';
>      read $randfile, $buf, 4*1024;
>      print $testbin $buf;
> }
> close $randfile;
> close $testbin;
> print "done!\n";
> 
> my $syscall = "C:/Windows/System32/makecab.exe /V3 test.bin 2\>\&1 |";
> my @makecaboutput = ();
> print "Now the actual test: this hangs with cygwin 3.1 ... ";
> open (CAB, $syscall);
> while (<CAB>) { push(@makecaboutput, $_); }
> close (CAB);
> print "makecab finished!\n"; # <<< this never prints
> 
> for ( my $i = 0; $i <= $#makecaboutput; $i++ )
> {
>      print $makecaboutput[$i];
> }
> 
> ############
> 
> I put this code to c:/makecab/test.pm, and run from mintty as
> 
> $ perl c:/makecab/test.pm
> 
> The text "makecab finished!" never appears with cygwin 3.1; it appears 
> as expected (several seconds, most of which is creation of random test 
> data) with cygwin 3.0.7-1.

Thanks for the report. I looked into this problem and found
this occurs after commit:

commit e1a0775dc0545b5f9c81b09a327fc110c538b7b4
Author: Takashi Yano <takashi.yano@nifty.ne.jp>
Date:   Thu Sep 26 19:52:46 2019 +0900

    Cygwin: pty: Fix PTY so that cygwin setup shows help with -h option.

    - After commit 169d65a5774acc76ce3f3feeedcbae7405aa9b57, cygwin
      setup fails to show help message when -h option is specified, as
      reported in https://cygwin.com/ml/cygwin/2019-09/msg00248.html.
      This patch fixes the problem.

I have submitted a patch for this issue just now.


-- 
Takashi Yano <takashi.yano@nifty.ne.jp>

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

      parent reply	other threads:[~2020-01-10 11:51 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-01-09 17:21 Mike Kaganski
2020-01-09 19:48 ` Jose Isaias Cabrera
2020-01-10 11:51 ` Takashi Yano [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200110205107.fa2cab25a9bf9607cd92752e@nifty.ne.jp \
    --to=takashi.yano@nifty.ne.jp \
    --cc=cygwin@cygwin.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).