ui: elevate Windows debug-bundle reveal to bypass SystemTemp ACL

The daemon runs as SYSTEM and writes the bundle into C:\Windows\SystemTemp,
whose ACL denies the logged-in user, so a plain 'explorer /select' could not
open it. The Windows reveal now elevates via ShellExecuteW with the runas verb,
falling back to an unelevated reveal of the parent dir on decline.
This commit is contained in:
Zoltán Papp
2026-06-16 15:34:09 +02:00
parent 44709983f7
commit 1f69cd189e
4 changed files with 76 additions and 14 deletions
+1 -13
View File
@@ -5,9 +5,6 @@ package services
import (
"context"
"fmt"
"os/exec"
"path/filepath"
"runtime"
"strings"
"time"
@@ -85,16 +82,7 @@ func (s *Debug) RevealFile(_ context.Context, path string) error {
if path == "" {
return fmt.Errorf("empty path")
}
var cmd *exec.Cmd
switch runtime.GOOS {
case "darwin":
cmd = exec.Command("open", "-R", path)
case "windows":
cmd = exec.Command("explorer", "/select,"+path)
default:
cmd = exec.Command("xdg-open", filepath.Dir(path))
}
return cmd.Start()
return revealFile(path)
}
// RegisterUILog reports the GUI log path to the daemon for bundle collection;