mirror of
https://github.com/tmux-plugins/tmux-resurrect.git
synced 2024-12-25 00:28:49 +00:00
Fixes for cmdline save/restore strategy
This commit is contained in:
parent
edd8132bef
commit
15cabbb930
@ -13,7 +13,7 @@ exit_safely_if_empty_ppid() {
|
||||
|
||||
full_command() {
|
||||
[[ -z "$CPID" ]] && exit 0
|
||||
base64 /proc/${CPID}/cmdline
|
||||
cat /proc/${CPID}/cmdline | perl -ne 'print join(" ", map quotemeta, split(/\000/))' | base64 -w0
|
||||
}
|
||||
|
||||
main() {
|
||||
|
@ -293,13 +293,14 @@ restore_shell_history() {
|
||||
|
||||
restore_all_pane_processes() {
|
||||
if restore_pane_processes_enabled; then
|
||||
local save_command_strategy="$(get_tmux_option "$save_command_strategy_option" "$default_save_command_strategy")"
|
||||
local pane_full_command
|
||||
awk 'BEGIN { FS="\t"; OFS="\t" } /^pane/ && $11 !~ "^:$" { print $2, $3, $7, $8, $11; }' $(last_resurrect_file) |
|
||||
while IFS=$d read session_name window_number pane_index dir pane_full_command; do
|
||||
dir="$(remove_first_char "$dir")"
|
||||
pane_full_command="$(remove_first_char "$pane_full_command")"
|
||||
if base64 -d <<< $pane_full_command >/dev/null 2>&1; then
|
||||
pane_full_command=$(base64 -d <<< $pane_full_command | perl -ne 'print join(" ", map quotemeta, split(/\000/)), "\n"')
|
||||
if [ $save_command_strategy = "cmdline" ]; then
|
||||
pane_full_command=$(base64 -d <<< $pane_full_command)
|
||||
fi
|
||||
restore_pane_process "$pane_full_command" "$session_name" "$window_number" "$pane_index" "$dir"
|
||||
done
|
||||
|
Loading…
Reference in New Issue
Block a user