diff options
| author | Jack Nagel | 2012-04-11 20:19:52 -0500 |
|---|---|---|
| committer | Jack Nagel | 2012-07-02 01:10:21 -0500 |
| commit | ca71c038a147f721bf8875bfcf938b1a20410e54 (patch) | |
| tree | aeedd57d2ae86a67c5b9705448ce4ca0f1a6be86 /Library | |
| parent | 168ccb2821f1e4adb1129b2a73b51805743aee51 (diff) | |
| download | brew-ca71c038a147f721bf8875bfcf938b1a20410e54.tar.bz2 | |
Cache Hardware.is_64_bit?
IO#popen is called for each call to Hardware.is_64_bit?; this becomes
costly when it is repeatedly invoked. Luckily it is an invariant, so we
can store it in a class variable.
False is a valid value for this method, so the usual ||= idiom is not
applicable.
Signed-off-by: Jack Nagel <jacknagel@gmail.com>
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/hardware.rb | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/Library/Homebrew/hardware.rb b/Library/Homebrew/hardware.rb index 8716cd270..426ab4c49 100644 --- a/Library/Homebrew/hardware.rb +++ b/Library/Homebrew/hardware.rb @@ -55,7 +55,8 @@ class Hardware end def self.is_64_bit? - self.sysctl_bool("hw.cpu64bit_capable") + return @@is_64_bit if defined? @@is_64_bit + @@is_64_bit = self.sysctl_bool("hw.cpu64bit_capable") end def self.bits |
