# File lib/fpm/util.rb, line 188 def safesystem(*args) # ChildProcess isn't smart enough to run a $SHELL if there's # spaces in the first arg and there's only 1 arg. if args.size == 1 args = [ default_shell, "-c", args[0] ] end if args[0].kind_of?(Hash) env = args.shift() exit_code = execmd(env, args) else exit_code = execmd(args) end program = args[0] success = (exit_code == 0) if !success raise ProcessFailed.new("#{program} failed (exit code #{exit_code})" \ ". Full command was:#{args.inspect}") end return success end