Set the return_value
from the initialize
block in the DatabaseCache
.
This commit is contained in:
parent
b0dd3f4c99
commit
17f484b0ae
@ -12,6 +12,9 @@ class DatabaseCache
|
||||
# https://docs.oracle.com/cd/E17276_01/html/api_reference/C/envopen.html
|
||||
DATABASE_MODE = 0664
|
||||
|
||||
# Returned value from `initialize` block
|
||||
attr_reader :return_value
|
||||
|
||||
# Opens and yields a database in read/write mode. Closes the database after use
|
||||
#
|
||||
# @yield [DBM] db
|
||||
@ -19,7 +22,7 @@ class DatabaseCache
|
||||
def initialize(name)
|
||||
# DBM::WRCREAT: Creates the database if it does not already exist
|
||||
@db = DBM.open("#{HOMEBREW_CACHE}/#{name}.db", DATABASE_MODE, DBM::WRCREAT)
|
||||
yield(@db)
|
||||
@return_value = yield(@db)
|
||||
@db.close
|
||||
end
|
||||
end
|
||||
|
@ -1527,11 +1527,13 @@ class Formula
|
||||
keg = opt_or_installed_prefix_keg
|
||||
return [] unless keg
|
||||
|
||||
DatabaseCache.new(:linkage) do |database_cache|
|
||||
cache = DatabaseCache.new(:linkage) do |database_cache|
|
||||
use_cache = !ENV["HOMEBREW_LINKAGE_CACHE"].nil?
|
||||
linkage_checker = LinkageChecker.new(keg, database_cache, use_cache, self)
|
||||
break linkage_checker.undeclared_deps.map { |n| Dependency.new(n) }
|
||||
linkage_checker.undeclared_deps.map { |n| Dependency.new(n) }
|
||||
end
|
||||
|
||||
cache.return_value
|
||||
end
|
||||
|
||||
# Returns a list of formulae depended on by this formula that aren't
|
||||
|
Loading…
x
Reference in New Issue
Block a user