class Open4::SpawnError

def exitstatus

def exitstatus
  @status.exitstatus
end

def initialize cmd, status

def initialize cmd, status
  @cmd, @status = cmd, status
  @signals = {} 
  if status.signaled?
    @signals['termsig'] = status.termsig
    @signals['stopsig'] = status.stopsig
  end
  sigs = @signals.map{|k,v| "#{ k }:#{ v.inspect }"}.join(' ')
  super "cmd <#{ cmd }> failed with status <#{ exitstatus.inspect }> signals <#{ sigs }>"
end