Changeset 23460
- Timestamp:
- 11/13/08 01:37:41 (5 years ago)
- Location:
- lang/perl/MENTA/trunk
- Files:
-
- 1 removed
- 1 modified
-
bin/cgi-server.pl (modified) (2 diffs)
-
lib/MENTA/BindSTDOUT.pm (deleted)
Legend:
- Unmodified
- Added
- Removed
-
lang/perl/MENTA/trunk/bin/cgi-server.pl
r23454 r23460 5 5 require HTTP::Server::Simple::CGI; 6 6 use POSIX; 7 use MENTA::BindSTDOUT;8 7 use HTTP::Response; 8 9 { 10 package MENTA::BindSTDOUT::Tie; 11 require Tie::Handle; 12 use base qw/Tie::Handle/; 13 use Carp; 14 15 sub TIEHANDLE { 16 my ($class, $bufref) = @_; 17 bless {buf => $bufref}, $class; 18 } 19 20 sub WRITE { 21 my $self = shift; 22 ${$self->{buf}} .= shift; 23 } 24 25 sub READ { croak "This handle is readonly" } 26 sub CLOSE { } 27 } 9 28 10 29 { 11 30 package MENTA::Server; 12 31 use base qw/HTTP::Server::Simple::CGI/; 32 33 sub bind_stdout { 34 my ($code, ) = @_; 35 tie *STDOUT, 'MENTA::BindSTDOUT::Tie', \my $out; 36 $code->(); 37 untie *STDOUT; 38 $out; 39 } 40 13 41 sub handle_request { 14 42 my $pid = fork(); … … 17 45 } elsif ($pid == 0) { 18 46 chdir 'app'; 19 my $out = MENTA::BindSTDOUT->bind(sub {47 my $out = bind_stdout(sub { 20 48 package main; 21 49 do './menta.cgi';
![(please configure the [header_logo] section in trac.ini)](/share/chrome/site/your_project_logo.png)