diff options
Diffstat (limited to 'lib/chef/win32/file/version_info.rb')
-rw-r--r-- | lib/chef/win32/file/version_info.rb | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/lib/chef/win32/file/version_info.rb b/lib/chef/win32/file/version_info.rb index 2974c8a695..08828981c1 100644 --- a/lib/chef/win32/file/version_info.rb +++ b/lib/chef/win32/file/version_info.rb @@ -28,7 +28,11 @@ class Chef def initialize(file_name) raise Errno::ENOENT, file_name unless ::File.exist?(file_name) - @file_version_info = retrieve_file_version_info(file_name) + begin + @file_version_info = retrieve_file_version_info(file_name) + rescue Chef::Exceptions::Win32APIError + # file likely has no embedded version info + end end # defining method for each predefined version resource string @@ -48,6 +52,8 @@ class Chef :SpecialBuild ].each do |method| define_method method do + return nil if @file_version_info.nil? + begin get_version_info_string(method.to_s) rescue Chef::Exceptions::Win32APIError |