Figured out something the hard way today. The last statement in a before filter should never yield false, unless you mean to halt the filter chain. That sounds obvious right? But check out this weird behavior:
Lesson: Never try to set default values like this in your before filters. If you find yourself setting default values, try to see if you can do it on the database side (:default => false in postgresql/mysql works). The reason is because the statement something = false, will always return false. If that's the last thing, your before filter will always return false! Add true as the last line and you'll be OK. Not pretty though.