summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lib/facter/manufacturer.rb11
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