summaryrefslogtreecommitdiff
path: root/django
diff options
context:
space:
mode:
authorKonstantin Alekseev <mail@kalekseev.com>2021-04-26 15:19:13 +0300
committerMariusz Felisiak <felisiak.mariusz@gmail.com>2021-04-27 12:02:06 +0200
commit55cb3c8ac186f7664b38d66fb4c7e678fe524741 (patch)
treed3fec983b7478da94fb0ff47485dc14fc541cd29 /django
parent34981f399a68b633682e0f6a3ded2e31ffd6d243 (diff)
[3.2.x] Fixed #32687 -- Restored passing process’ environment to underlying tool in dbshell on PostgreSQL.
Regression in bbe6fbb8768e8fb1aecb96d51c049d7ceaf802d3. Backport of 6e742dabc95b00ba896434293556adeb4dbaee8a from main.
Diffstat (limited to 'django')
-rw-r--r--django/db/backends/base/client.py3
-rw-r--r--django/db/backends/postgresql/client.py2
2 files changed, 2 insertions, 3 deletions
diff --git a/django/db/backends/base/client.py b/django/db/backends/base/client.py
index 339f1e863c..8aca821fd2 100644
--- a/django/db/backends/base/client.py
+++ b/django/db/backends/base/client.py
@@ -21,6 +21,5 @@ class BaseDatabaseClient:
def runshell(self, parameters):
args, env = self.settings_to_cmd_args_env(self.connection.settings_dict, parameters)
- if env:
- env = {**os.environ, **env}
+ env = {**os.environ, **env} if env else None
subprocess.run(args, env=env, check=True)
diff --git a/django/db/backends/postgresql/client.py b/django/db/backends/postgresql/client.py
index 7965401163..44f30f7939 100644
--- a/django/db/backends/postgresql/client.py
+++ b/django/db/backends/postgresql/client.py
@@ -41,7 +41,7 @@ class DatabaseClient(BaseDatabaseClient):
env['PGSSLCERT'] = str(sslcert)
if sslkey:
env['PGSSLKEY'] = str(sslkey)
- return args, env
+ return args, (env or None)
def runshell(self, parameters):
sigint_handler = signal.getsignal(signal.SIGINT)