You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 7305c7d
Browse filesBrowse the repository at this point in the historyBrowse files
Fix terminal shell injection and user-facing action bugs
Security:
- PBTerminalUtil built the Terminal/iTerm doScript command by interpolating the
repository directory path into a double-quoted shell string. Double quotes do
not neutralize $(...) or backticks, so a repository whose path contained a
command substitution executed arbitrary shell when opened in Terminal. Wrap
the path in single quotes (fully literal) via a shellQuote helper. Added a
regression test.
UI:
- PBGitWindowController revealInFinder: honored none of the file paths attached
to the menu item and always revealed the repository root; resolve the selected
files the same way openInTerminal: does, falling back to the root only when no
files are selected.
- PBGitXMessageSheet discarded the recovery suggestion because the
stringByAppendingString: results were thrown away; assign them back.
- Terminal preference text fields (initial command, custom executable/arguments)
committed only on Return and discarded the edit on focus loss; set
sendsActionOnEndEditing.
Co-Authored-By: Claude Opus 4.8 <[email protected]>
view.addRow("Custom arguments:",control:arguments,help:"Use {directory} and optionally {command}. Arguments are launched directly, never through a shell.")
0 commit comments