Skip to content

当workspace中包含多个app_target的情况下会出现stack level too deep #24

@blastmann

Description

@blastmann

project_helper.rb中会对workspace.project进行递归遍历,如workspace中包含多个app_target时,将会导致递归无法正常退出,最终引起stack overflow。

demo工程待补充。

考虑一下在project_helper.rb里面增加以下逻辑:

if targets.any?(&:app_target?)
    workspace.projects.each do |pr|
        next if pr == self
        next if pr.targets.any?(&:app_target?) # app_target没有嵌套的可能

        hs.merge!(pr.project_headers) { |_, v1, _| v1 }
    end
end

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions