()
| 167 | } |
| 168 | |
| 169 | func lookupFallbackBrowser() (string, bool) { |
| 170 | for _, candidate := range fallbackBrowserCandidates { |
| 171 | if strings.ContainsAny(candidate, `/\`) { |
| 172 | if _, err := os.Stat(candidate); err == nil { |
| 173 | return candidate, true |
| 174 | } |
| 175 | continue |
| 176 | } |
| 177 | if path, err := exec.LookPath(candidate); err == nil { |
| 178 | return path, true |
| 179 | } |
| 180 | } |
| 181 | return "", false |
| 182 | } |
| 183 | |
| 184 | // ── Shared browser lifecycle ──────────────────────────────────────── |
| 185 |
no outgoing calls
no test coverage detected