private static function openFileInBrowser()

in src/InspectorCLI.hack [101:132]


  private static function openFileInBrowser(string $filename): bool {
    $env = \HH\global_get('_ENV');
    $os = OSFAMILY;
    if ($os is null) {
      return false;
    }

    switch ($os) {
      case OSFamily::MACOS:
        $result = \pcntl_exec('/usr/bin/open', varray[$filename], $env);
        break;
      case OSFamily::LINUX:
        $error_reporting = \error_reporting(0);
        try {
          $result = \pcntl_exec(
            '/usr/bin/sensible-browser',
            varray[$filename],
            $env,
          );
        } finally {
          \error_reporting($error_reporting);
        }
        if ($result === false) {
          $result = \pcntl_exec('/usr/bin/xdg-open', varray[$filename], $env);
        }
        break;
      default:
        $result = false;
    }

    return $result;
  }