Add cmdline strategy

This commit is contained in:
donat-b 2017-09-26 22:08:25 +03:00 committed by *Kim Zick (rummik)
parent b020b2481e
commit edd8132bef
2 changed files with 26 additions and 0 deletions

View File

@ -0,0 +1,23 @@
#!/usr/bin/env bash
CURRENT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
PANE_PID="$1"
CPID=$(pgrep -P $PANE_PID)
exit_safely_if_empty_ppid() {
if [ -z "$PANE_PID" ]; then
exit 0
fi
}
full_command() {
[[ -z "$CPID" ]] && exit 0
base64 /proc/${CPID}/cmdline
}
main() {
exit_safely_if_empty_ppid
full_command
}
main

View File

@ -298,6 +298,9 @@ restore_all_pane_processes() {
while IFS=$d read session_name window_number pane_index dir pane_full_command; do while IFS=$d read session_name window_number pane_index dir pane_full_command; do
dir="$(remove_first_char "$dir")" dir="$(remove_first_char "$dir")"
pane_full_command="$(remove_first_char "$pane_full_command")" 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"')
fi
restore_pane_process "$pane_full_command" "$session_name" "$window_number" "$pane_index" "$dir" restore_pane_process "$pane_full_command" "$session_name" "$window_number" "$pane_index" "$dir"
done done
fi fi