On Wed, Apr 8, 2015 at 5:34 AM, Eric Wong <e...@80x24.org> wrote: > Running this on http://yhbt.net/yahns-public/ for now. I originally I > forgot to disable one of my throwaway middlewares which was not aware of > Rack hijacking. > > From: Eric Wong <e...@80x24.org> > Subject: [PATCH] proxy_pass: possibly avoid breaking some middlewares > > hijack seems incompatible with many middlewares, so return a > wonky response tuplet just in case... > --- > lib/yahns/proxy_pass.rb | 3 +++ > 1 file changed, 3 insertions(+) > > diff --git a/lib/yahns/proxy_pass.rb b/lib/yahns/proxy_pass.rb > index e3ba7f0..48a61af 100644 > --- a/lib/yahns/proxy_pass.rb > +++ b/lib/yahns/proxy_pass.rb > @@ -235,6 +235,9 @@ class Yahns::ProxyPass # :nodoc: > > # finally, prepare to emit the headers > rr.req_start(c, req << "\r\n".freeze, input, chunked) > + > + # this probably breaks fewer middlewares than returning whatever else... > + [ 500, [], [] ]
You probably meant [ 500, {}, [] ] here? > rescue => e > Yahns::Log.exception(env['rack.logger'], 'proxy_pass', e) > [ 502, [ %w(Content-Length 0), %w(Content-Type text/plain) ], [] ] > -- > EW > >