1

約 3000 回の実行ごとに、次のコードのy << v行で segfault が発生します。

cacheは string->object ハッシュであり、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]

完全なエラー スタック は次のとおりです (残念ながら、コンソールまたは CrashReporter には情報が書き込まれませんでした)。

私は愚かなことをしていますか?

4

0 に答える 0