diff options
author | lutter <lutter@1f5c1d6a-bddf-0310-8f58-fc49e503516a> | 2007-06-24 03:09:25 +0000 |
---|---|---|
committer | lutter <lutter@1f5c1d6a-bddf-0310-8f58-fc49e503516a> | 2007-06-24 03:09:25 +0000 |
commit | 43b5640e425d19a20e04fb1d5661bc48d23ee928 (patch) | |
tree | 225246e736f5d63df87ee051402ff6e05f0fb0ad | |
parent | 68449a95efc4245313df38bbee5838522930108f (diff) | |
download | facter-43b5640e425d19a20e04fb1d5661bc48d23ee928.tar.gz facter-43b5640e425d19a20e04fb1d5661bc48d23ee928.tar.xz facter-43b5640e425d19a20e04fb1d5661bc48d23ee928.zip |
Remove tabs; don't fail if dmidecode doesn't return expected information
git-svn-id: http://reductivelabs.com/svn/facter/trunk@211 1f5c1d6a-bddf-0310-8f58-fc49e503516a
-rw-r--r-- | lib/facter/manufacturer.rb | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/facter/manufacturer.rb b/lib/facter/manufacturer.rb index 049bcd9..128241c 100644 --- a/lib/facter/manufacturer.rb +++ b/lib/facter/manufacturer.rb @@ -1,13 +1,14 @@ # Info about the manufacturer # - + module Facter::Manufacturer def self.dmi_find_system_info(name) dmiinfo = `/usr/sbin/dmidecode` - info = dmiinfo.scan(/^\s*System Information(.*?)\n\S/m).join.split("\n").map { |line| - line.split(":").map { |line2| line2.strip } - }.reject { |array| array.empty? } - info.select { |array| array[0] == name} [0][1] + info = dmiinfo.scan(/^\s*System Information(.*?)\n\S/m).join.split("\n").map { |line| + line.split(":").map { |line2| line2.strip } + }.reject { |array| array.empty? } + val = info.find { |array| array[0] == name} + return (val && val.size >= 2) ? val[1] : nil end end |