嵌套枚举中罕见的ruby segfault

时间:2013-01-31 20:47:38

标签: ruby segmentation-fault

每执行3000次左右,我在y << v行的以下代码中得到了段错误。

cache是一个字符串 - &gt;对象哈希,而enum_files是一种辅助方法,可以简化过滤访问。

  def enum_files
    load_all
    Enumerator.new  do |y| 
      cache.each do |k,v|      
        y << v if yield(v)
      end
    end
  end

  def pages
    @cached_pages ||= enum_files { |p| p.is_page? && p.can_render? }.to_a
  end

  def posts
    @cached_posts ||= enum_files { |p| p.is_page? && p.can_render? && p.is_post? }.sort { |x, y| y.date <=> x.date }
  end

http://hardwiredcms.com完整来源)

我正在ruby 1.9.3p362

上运行OS X 10.8.2 [x86_64-darwin12.2.0]

Here's the full error stack(不幸的是,没有信息写入Console或CrashReporter)

我做了些蠢事吗?

0 个答案:

没有答案