develooper Front page | perl.perl5.porters | Postings from March 2008

[perl #51674] op/alarm.t hangs on 5.11.0 (Windows Vista only)

Thread Next
From:
Sisyphus
Date:
March 13, 2008 01:00
Subject:
[perl #51674] op/alarm.t hangs on 5.11.0 (Windows Vista only)
Message ID:
rt-3.6.HEAD-25460-1205376724-1011.51674-75-0@perl.org
# New Ticket Created by  "Sisyphus" 
# Please include the string:  [perl #51674]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=51674 >


To: perlbug@perl.org
Subject: op/alarm.t hangs on 5.11.0 (Windows Vista only)
Reply-To: sisyphus1@optusnet.com.au
Message-Id: <5.11.0_3628_1205376264@desktop2>

This is a bug report for perl from sisyphus1@optusnet.com.au,
generated with the help of perlbug 1.36 running under perl 5.11.0.

Firstly this problem affects Windows Vista only. At least, I've checked on 
Windows XP and there's no problem.
Secondly, it affects only perl 5.11.0 (March 10 snapshot). All works fine on 
5.10.0.

The test script (based upon the problem code in op/alarm.t) :

----------------------------------
use warnings;
use strict;

my $start_time = time;
local $SIG{ALRM} = sub { die "ALARM! ", time - $start_time, "\n" };
alarm 3;
print "Got to here\n";
1 while (time - $start_time < 6);
----------------------------------

On Windows Vista, 5.11.0 that outputs the "Got to here\n" and then hangs.

There is still no additional output even if I rewrite the while() loop as:

print "." while (time - $start_time < 6);

I can, however, coerce some additional output if I rewrite the while loop 
as:

print "." while 1;

That will then print out 4096 dots to the screen (in a fraction of a second) 
before hanging.

I'm running Vista64 on an AMD64 box. I don't expect Vista32 behaves an 
differently.

Cheers,
Rob---
Flags:
    category=core
    severity=medium
---
Site configuration information for perl 5.11.0:

Configured by Rob at Tue Mar 11 09:51:36 2008.

Summary of my perl5 (revision 5 version 11 subversion 0 patchlevel 33458) 
configuration:
  Platform:
    osname=MSWin32, osvers=6.0, archname=MSWin32-x64-multi-thread
    uname=''
    config_args='undef'
    hint=recommended, useposix=true, d_sigaction=undef
    useithreads=define, usemultiplicity=define
    useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
    use64bitint=undef, use64bitall=undef, uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='gcc', ccflags 
' -s -O2 -DWIN32 -DHAVE_DES_FCRYPT  -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS 
 -fno-strict-aliasing -mms-bitfields -DPERL_MSVCRT_READFIX',
    optimize='-s -O2',
    cppflags='-DWIN32'
    ccversion='', gccversion='3.4.5', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='long long', 
lseeksize=8
    alignbytes=8, prototype=define
  Linker and Libraries:
    ld='g++', ldflags 
='-s -L"c:\bleadperl\lib\CORE" -L"C:\home\rob\mingw_vista\i686-pc-mingw32\lib"'
    libpth=C:\home\rob\mingw_vista\i686-pc-mingw32\lib
    libs=-lmsvcrt -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 
 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm 
 -lversion -lodbc32 -lodbccp32
    perllibs=-lmsvcrt -lmoldname -lkernel32 -luser32 -lgdi32 -lwinspool -lcomdlg32 
 -ladvapi32 -lshell32 -lole32 -loleaut32 -lnetapi32 -luuid -lws2_32 -lmpr -lwinmm 
 -lversion -lodbc32 -lodbccp32
    libc=-lmsvcrt, so=dll, useshrplib=true, libperl=libperl511.a
    gnulibc_version=''
  Dynamic Linking:
    dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', 
lddlflags='-mdll -s -L"c:\bleadperl\lib\CORE" -L"C:\home\rob\mingw_vista\i686-pc-mingw32\lib"'

Locally applied patches:
    DEVEL

---
@INC for perl 5.11.0:
    C:/bleadperl/lib
    C:/bleadperl/site/lib
    .

---
Environment for perl 5.11.0:
    HOME (unset)
    LANG (unset)
    LANGUAGE (unset)
    LD_LIBRARY_PATH (unset)
    LOGDIR (unset)
    PATH=C:\Program Files\Windows 
NT\Accessories;C:\_32\third_party_app;C:\GNUWin32\bin;C:\bleadperl\bin;C:\_32\dmake;C:\home\rob\mingw_vista\i686-pc-mingw32\bin;c:\ruby\bin;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\batch;C:\_32\msys\1.0\bin
    PERL_BADLANG (unset)
    SHELL (unset) 


Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About