title: before filter issue in padrino
body: <p>I'm trying to create a chain of before filter in padrino that look like this of which look like this</p>
  
  <pre><code>before do
    set_current_user
    track_order_ip
    !current_user and pass
    ## don't allow the next filter other filter to run if no current user 
    customer_inactivity!
    skip_enforce!
    ## so the theory is this if a users is is not enforced he should not be allowed to execute enforce! before filter
    enforce!
  end
  </code></pre>
  
  <p>Now all filter would execute in chain but if the <strong>current_user</strong> is not present I wish to drop(i.e <code>pass</code>) the filter chain processing which is taken care by this (<code>!current_user and pass</code>) code</p>
  
  <p>But trying to do something like this in padrino cause the app to redirect the same route multiple time and then break with following error. </p>
  
  <p><code>ArgumentError at /myaccount/users/authenticate 
    uncaught throw :pass</code> </p>
  
  <p>at   </p>
  
  <p><code>!current_customer and pass</code> </p>
  
  <p>What I'm find weird and what I'm  not able to understand is , why? it not working in Padrino(since I know Padrino internally uses Sinatra)  because I did wrote a proof of concept similar application in sinatra (can be found over <a href="https://gist.github.com/meetme2meat/04f92428d0bb3b10ab47" rel="nofollow"><code>here</code></a>) and that just seem to work out of box without any issue </p>
  
  <p>Lastly <a href="https://gist.github.com/meetme2meat/7207b46c5ca2ce6cd4ac#file-padrino-rb-L70-L80" rel="nofollow"><code>here</code></a> the padrino code </p>
  
  <p>Now any one can give me some pointer as too what I'm doing wrong in padrino that is implemented correctly in the proof of concept sinatra app</p>
  
  <p>Thanks</p>