Hi,

I jumped into the middle of this thread and it seems I am encountering a segfault in the header just like you have described.

Could you give me an overview of your solution since I do not have your first emails to this list.

Thanks

Tyler

pubert na wrote:
I fixed it... apparently it not like the "return $self if defined $self;" ... return $class id ref $class is better form anyway... thanks and sorry about all the emails ;)

On 7/2/07, *pubert na* <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

    I was able to narrow down the problem I was having, and produce a
    test case for you folks. Below are two relatively self-explanatory
    files.  If I navigate to test.cgi, it will appear to load the page
    properly, but if I hit the reload button a bunch of times in a
    row, the error_log will log segfaults.  I pasted a sample at the
bottom of this message. I'd appreciate any help at all. Obviously the issue is coming from CGI.pm's header function, which
    *should* be ok with mod_perl2.  Thanks again. --Pubert



    ##>BEGIN FILE test.cgi<

#!/usr/bin/perl

    use lib qw(/var/www/cgi-bin/);;

    use strict;
    use CGI;
    use testclass;

    my $cgi=new CGI;

    my $tc = testclass->new({CGI=>$cgi});
    $tc->doit();


    1;

    ##>BEGIN FILE testclass.pm <http://testclass.pm><

    package testclass;

    my $self;

#########################################################################################################
    sub new {
#########################################################################################################
    # This is the
constructor.

        my ( $class, $args ) = @_;

        return $self if defined $self;

        $self = {};

        bless $self, $class;

        $self->{CGI}=$args->{CGI};

        return $self;
    }


    sub doit{

        print $self->{CGI}->header;
        print "hello";

    }

    1;

    >Begin error_log snipper<
    [Mon Jul 02 18:45:34 2007] [notice] SIGHUP received.  Attempting
    to restart
    [Mon Jul 02 18:45:34 2007] [notice] Digest: generating secret for
    digest authentication ...
    [Mon Jul 02 18:45:34 2007] [notice] Digest: done
    [Mon Jul 02 18:45:34 2007] [notice] Apache/2.2.4 (Unix) DAV/2
    mod_apreq2-20051231/2.6.1 mod_perl/2.0.2 Perl/v5.8.8 configured --
    resuming normal operations
    [Mon Jul 02 18:45:39 2007] [notice] child pid 7925 exit signal
    Segmentation fault (11)
    [Mon Jul 02 18:45:39 2007] [notice] child pid 7926 exit signal
    Segmentation fault (11)
    [Mon Jul 02 18:45:39 2007] [notice] child pid 7927 exit signal
    Segmentation fault (11)
    [Mon Jul 02 18:45:40 2007] [notice] child pid 7928 exit signal
    Segmentation fault (11)
    [Mon Jul 02 18:45:40 2007] [notice] child pid 7929 exit signal
    Segmentation fault (11)
    [Mon Jul 02 18:45:40 2007] [notice] child pid 7931 exit signal
    Segmentation fault (11)



Reply via email to