code: def _handle_posix_error(exc, cwd, cmd):
      
      if getattr(exc, 'filename', None) == cwd:
          _handle_posix_cwd_error(exc, cwd, cmd)
      else:
          _handle_posix_cmd_error(exc, cwd, cmd)
docs: OSError handling for posix systems.
  
      Some things that could happen to trigger an OSError:
          - cwd could not exist
              - exc.errno == ENOENT
              - exc.filename == cwd
          - cwd could have permissions that prevent the current user moving to it
              - exc.errno == EACCES
              - exc.filename == cwd
          - cwd could exist but not be a directory
              - exc.errno == ENOTDIR
              - exc.filename == cwd
          - cmd[0] could not exist
              - exc.errno == ENOENT
              - exc.filename == None(?)
          - cmd[0] could exist but have permissions that prevents the current
              user from executing it (executable bit not set for the user)
              - exc.errno == EACCES
              - exc.filename == None(?)