From 43b5640e425d19a20e04fb1d5661bc48d23ee928 Mon Sep 17 00:00:00 2001 From: lutter Date: Sun, 24 Jun 2007 03:09:25 +0000 Subject: 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 --- lib/facter/manufacturer.rb | 11 ++++++----- 1 file 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 -- cgit