- Issue #7567: Don't call `setupterm' twice.
diff --git a/Misc/NEWS b/Misc/NEWS
index 40b918b..fed0772 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -78,6 +78,8 @@
then that exception wasn't properly propagated on machines where
char is unsigned.
+- Issue #7567: Don't call `setupterm' twice.
+
Build
-----
diff --git a/Modules/_cursesmodule.c b/Modules/_cursesmodule.c
index e9b5b65..5f26c7f 100644
--- a/Modules/_cursesmodule.c
+++ b/Modules/_cursesmodule.c
@@ -2047,7 +2047,7 @@
}
}
- if (setupterm(termstr,fd,&err) == ERR) {
+ if (!initialised_setupterm && setupterm(termstr,fd,&err) == ERR) {
char* s = "setupterm: unknown error";
if (err == 0) {