From db65b1a3c372acf56fbf4ad01aa7f8461e5385d6 Mon Sep 17 00:00:00 2001 From: Scott Kostyshak Date: Thu, 29 Aug 2019 20:48:34 -0400 Subject: [PATCH] Port gnuplot2pdf.py to Python 3 Instead of wait(), use communicate(), as mentioned here: https://docs.python.org/3/library/subprocess.html Otherwise, the process seems to hang as cautioned in the above URL. Also, use byte strings. --- lib/scripts/gnuplot2pdf.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/scripts/gnuplot2pdf.py b/lib/scripts/gnuplot2pdf.py index fb036b2df5..e7246a3dea 100755 --- a/lib/scripts/gnuplot2pdf.py +++ b/lib/scripts/gnuplot2pdf.py @@ -11,7 +11,7 @@ if (len(argv) != 3): with open(argv[1], 'rb') as fsrc: subproc = Popen("gnuplot", shell=True, stdin=PIPE) - subproc.stdin.write("set terminal pdf\nset output '%s'\n" % argv[2]) + subproc.stdin.write(b"set terminal pdf\nset output '%s'\n" % argv[2].encode()) shutil.copyfileobj(fsrc, subproc.stdin) - subproc.stdin.write("exit\n") - subproc.wait() + subproc.stdin.write(b"exit\n") + subproc.communicate()