about summary refs log tree commit diff
path: root/src/etc
diff options
context:
space:
mode:
authorftilde <ftilde@protonmail.com>2018-08-18 23:46:52 +0200
committerftilde <ftilde@protonmail.com>2018-08-19 00:00:00 +0200
commit73b5c7eda2a44aea26b5e62f8caaddc6902a45bb (patch)
tree2e97dabe59a257cae91bc45bc30778950654c81c /src/etc
parent33b923fd44c5c5925e635815fce68bdf1f98740f (diff)
downloadrust-73b5c7eda2a44aea26b5e62f8caaddc6902a45bb.tar.gz
rust-73b5c7eda2a44aea26b5e62f8caaddc6902a45bb.zip
Avoid creation of command temp file in rust-lldb
Arguments are passed on the command line via --one-line-before-file
(instead of in a file via --source-before-file) to lldb.
Diffstat (limited to 'src/etc')
-rwxr-xr-xsrc/etc/rust-lldb21
1 files changed, 9 insertions, 12 deletions
diff --git a/src/etc/rust-lldb b/src/etc/rust-lldb
index f70ab65bce7..56851595dd5 100755
--- a/src/etc/rust-lldb
+++ b/src/etc/rust-lldb
@@ -23,19 +23,16 @@ display the contents of local variables!"
     echo "***"
 fi
 
-# Create a tempfile containing the LLDB script we want to execute on startup
-TMPFILE=`mktemp /tmp/rust-lldb-commands.XXXXXX`
-
-# Make sure to delete the tempfile no matter what
-trap "rm -f $TMPFILE; exit" INT TERM EXIT
-
 # Find out where to look for the pretty printer Python module
 RUSTC_SYSROOT=`rustc --print sysroot`
 
-# Write the LLDB script to the tempfile
-echo "command script import \"$RUSTC_SYSROOT/lib/rustlib/etc/lldb_rust_formatters.py\"" >> $TMPFILE
-echo "type summary add --no-value --python-function lldb_rust_formatters.print_val -x \".*\" --category Rust" >> $TMPFILE
-echo "type category enable Rust" >> $TMPFILE
+# Prepare commands that will be loaded before any file on the command line has been loaded
+script_import="command script import \"$RUSTC_SYSROOT/lib/rustlib/etc/lldb_rust_formatters.py\""
+category_definition="type summary add --no-value --python-function lldb_rust_formatters.print_val -x \".*\" --category Rust"
+category_enable="type category enable Rust"
 
-# Call LLDB with the script added to the argument list
-lldb --source-before-file="$TMPFILE" "$@"
+# Call LLDB with the commands added to the argument list
+lldb --one-line-before-file="$script_import" \
+    --one-line-before-file="$category_definition" \
+    --one-line-before-file="$category_enable" \
+    "$@"