On Sun, 14 Apr 2002, Stas Bekman wrote: Hi,
> Vlad Harchev wrote: > > Hi, > > > > When using the following script under mod_perl, each httpd process crashes on > > the 2nd request to execute this script. > > ------------ > > #!/usr/bin/perl > > use strict; use POSIX qw(locale_h); > > setlocale(LC_ALL,'en_US.utf8'); > > print "Expires: 1 Jan 1970\nContent-Type: text/html\n\nHi"; > > ------------- > > This crashes if instead of 'en_US.utf8' one uses any other utf8 locale that > > is available in the system. If one uses locale with single-byte encoding (e.g. > > 'en_US.ascii' or 'ru_RU.koi8r') it doesn't crash httpd. (I didn't try > > other multibyte encodings beside utf8). > > > > If one uses LC_COLLATE instead of LC_ALL, it doesn't crash for any locale (I > > didn't try other locale categories). (The httpd server is started under > > locale 'ru_RU.koi8r' - a single-byte locale). > > > > I'm using mod_perl on RH72 for x86, versions of the relevant software: > > perl-5.6.0-17 > > mod_perl-1.24_01-3 > > glibc-2.2.4-19.3 > > apache-1.3.20-16 > > I doubt it's a bug in mod_perl. Setting locale affects the lots of core > things, so a simple test may not trigger the problem. > > BTW, if I remember correctly Perl 5.6.0 is not utf8-safe (or unicode in > general), correct me if I'm wrong. Can you try the same with the latest > bleadperl? (skip the 'make test' there is some problem in perl that I'm > fixing now). 5.8.0 should be out in a month or so and it should work > well with unicode. Unfortunately, I don't have time for compiling and installing it.. I hope somebody on this list who has already installed version of recent perl will test the problem.. > In any case, you should send a backtrace of the coredump according to > the SUPPORT file found in the mod_perl source distro. I'll try to find time for this - but most probably debug info is stripped and backtrace will be meaningless. Again I hope somebody with perl built with debug info unstripped will be able to find time to produce backtrace. Thanks! Best regards, -Vlad