module ActionView::Helpers::CacheHelper

def fragment_for_with_haml(*args, &block)

so we only override that case.
Luckily, it only makes this assumption if caching is disabled,
which is not always the case.
will return its contents as a string,
Their fragment_for assumes that the block
that's present at least through beta 3.
This is a workaround for a Rails 3 bug
def fragment_for_with_haml(*args, &block)
  return fragment_for_without_haml(*args, &block) if controller.perform_caching
  capture(&block)
end