aboutsummaryrefslogtreecommitdiffstats
path: root/priv
diff options
context:
space:
mode:
Diffstat (limited to 'priv')
-rwxr-xr-xpriv/templates/extended_bin15
-rw-r--r--priv/templates/vm_args11
2 files changed, 26 insertions, 0 deletions
diff --git a/priv/templates/extended_bin b/priv/templates/extended_bin
index ddecc8b..06c7242 100755
--- a/priv/templates/extended_bin
+++ b/priv/templates/extended_bin
@@ -2,6 +2,21 @@
set -e
+# http://erlang.org/doc/man/run_erl.html
+# If defined, disables input and output flow control for the pty
+# opend by run_erl. Useful if you want to remove any risk of accidentally
+# blocking the flow control by using Ctrl-S (instead of Ctrl-D to detach),
+# which can result in blocking of the entire Beam process, and in the case
+# of running heart as supervisor even the heart process becomes blocked
+# when writing log message to terminal, leaving the heart process unable
+# to do its work.
+RUN_ERL_DISABLE_FLOWCNTRL=${RUN_ERL_DISABLE_FLOWCNTRL:-true}
+export $RUN_ERL_DISABLE_FLOWCNTRL
+
+if [ "$TERM" = "dumb" -o -z "$TERM" ]; then
+ export TERM=screen
+fi
+
SCRIPT=$(readlink $0 || true)
if [ -z $SCRIPT ]; then
SCRIPT=$0
diff --git a/priv/templates/vm_args b/priv/templates/vm_args
index 02841bd..f65c7dc 100644
--- a/priv/templates/vm_args
+++ b/priv/templates/vm_args
@@ -17,3 +17,14 @@
## Tweak GC to run more often
##-env ERL_FULLSWEEP_AFTER 10
+
+# +B [c | d | i]
+# Option c makes Ctrl-C interrupt the current shell instead of invoking the emulator break
+# handler. Option d (same as specifying +B without an extra option) disables the break handler. # Option i makes the emulator ignore any break signal.
+# If option c is used with oldshell on Unix, Ctrl-C will restart the shell process rather than
+# interrupt it.
+# Disable the emulator break handler
+# it easy to accidentally type ctrl-c when trying
+# to reach for ctrl-d. ctrl-c on a live node can
+# have very undesirable results
+##+Bi