Thread (18 messages) flat view 18 messages, 2 authors, 2016-06-15

Re: [RFC PATCHv2 04/10] gitweb: Use Cache::Cache compatibile (get, set) output caching

From: Jakub Narebski <hidden>
Date: 2016-06-15 22:48:13

Dnia środa 10. lutego 2010 19:22, Jakub Narebski napisał:
Well, the idea was to use PerlIO::Util if possible, checking it via

  out $use_perlio_layers = eval { require PerlIO::Util; 1 };

and fallback to generic mechanism if it is not present.  Only the
generic mechanism would have to be changed from manipulating *STDOUT
(*STDOUT = $data_fh etc.) to tied filehandle.
Well, damn, this is not needed[1].  Instead of manipulating *STDOUT,
it is enough to use 'select FILEHANDLE'.  It means that the capture
would look like this:

  open my $data_fh, '>', \$data;
  my $oldfh = select($data_fh);

  # ... code that uses 'print <sth>'

  select($oldfh);
  close $data_fh;

One thing that needs to be done is changing 'binmode STDOUT ...' into
'binmode select() ...'

[1] Thanks to mst on #perl channel for pointing this to me.
-- 
Jakub Narebski
Poland
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help