From e07a477262fe3e4d326ba671296489d32f575600 Mon Sep 17 00:00:00 2001 From: Mario Staykov Date: Fri, 14 Dec 2018 13:55:27 +0000 Subject: [PATCH] Surround sys.argv call with a try-except block --- pymysql/connections.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/pymysql/connections.py b/pymysql/connections.py index c01d9993..f225ffca 100644 --- a/pymysql/connections.py +++ b/pymysql/connections.py @@ -315,12 +315,16 @@ def _config(key, arg): '_pid': str(os.getpid()), '_client_version': VERSION_STRING, } - if program_name is None: - argv = getattr(sys, "argv") - if argv: - program_name = argv[0] - if PY2: - program_name = program_name.decode('utf-8', 'replace') + # Safely handle not having sys.argv available + try: + if program_name is None: + argv = getattr(sys, "argv") + if argv: + program_name = argv[0] + if PY2: + program_name = program_name.decode('utf-8', 'replace') + except(AttributeError): + pass if program_name: self._connect_attrs["program_name"] = program_name