python38: bump version.

patch socket_module.c for upstream bug #40628
This commit is contained in:
Jerome Duval
2020-05-15 15:44:28 +02:00
parent c92ab53eee
commit 8bf4e322fa
4 changed files with 130 additions and 43 deletions

View File

@@ -1,4 +1,4 @@
From 5a86655aff86a8588797bd27eedf31bdfe8807c7 Mon Sep 17 00:00:00 2001
From 9d575e09be9807ca02ebbeb5b4ccfb8f5e699a89 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Thu, 10 Apr 2014 16:03:33 +0000
Subject: initial Haiku patch
@@ -215,7 +215,7 @@ index 1cd9e56..893cf1f 100644
def test_mknod_dir_fd(self):
# Test using mknodat() to create a FIFO (the only use specified
diff --git a/Makefile.pre.in b/Makefile.pre.in
index beaccf5..8cbdddb 100644
index 35ca1a8..d316694 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
@@ -143,7 +143,7 @@ BINDIR= @bindir@
@@ -419,7 +419,7 @@ index 4363c0c..40994b0 100755
def main():
global filedict
diff --git a/configure.ac b/configure.ac
index 1ef0df7..a0d60f1 100644
index f9dabd8..f55f9f2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1151,6 +1151,16 @@ if test $enable_shared = "yes"; then
@@ -487,7 +487,7 @@ index 1ef0df7..a0d60f1 100644
AC_MSG_CHECKING(for --with-libs)
AC_ARG_WITH(libs,
AS_HELP_STRING([--with-libs='lib1 ...'], [link against additional libs]),
@@ -4296,6 +4313,7 @@ AC_CHECK_FUNC(__fpu_control,
@@ -4311,6 +4328,7 @@ AC_CHECK_FUNC(__fpu_control,
AC_SUBST(LIBM)
case $ac_sys_system in
Darwin) ;;
@@ -575,14 +575,14 @@ index 88cff61..7e0dc0a 100644
2.24.0
From ba498555a6561129cb85af96728e2abb80ac6df9 Mon Sep 17 00:00:00 2001
From 052d2b5998fc198fcc7dcdbbc99d15098690ba78 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Sun, 16 Apr 2017 10:05:42 +0200
Subject: fix for negative errnos
diff --git a/Lib/subprocess.py b/Lib/subprocess.py
index d1b6de5..6333785 100644
index 3f99be5..7114840 100644
--- a/Lib/subprocess.py
+++ b/Lib/subprocess.py
@@ -1537,6 +1537,8 @@ class Popen(object):
@@ -613,7 +613,7 @@ index 3cf0683..adf3608 100644
2.24.0
From 5bd3ff9583dceb24e2af775b59037906fe7756d2 Mon Sep 17 00:00:00 2001
From b4a5b6f8165d5feecbb68454d327a7b9fd00fd9e Mon Sep 17 00:00:00 2001
From: Philippe Houdoin <philippe.houdoin@gmail.com>
Date: Wed, 24 May 2017 11:09:43 +0000
Subject: Implement CTypes's find_library for Haiku
@@ -697,14 +697,14 @@ index 97973bc..b2e4095 100644
2.24.0
From d6665e4df98dab9f724de1190825c14ca58ef84c Mon Sep 17 00:00:00 2001
From 1bda22cfae9cd3376da34240f1de6b3f10d8e426 Mon Sep 17 00:00:00 2001
From: Philipp Wolfer <phil@parolu.io>
Date: Mon, 23 Sep 2019 09:14:58 +0200
Subject: webbrowser: Support for default browsers on Haiku
diff --git a/Lib/webbrowser.py b/Lib/webbrowser.py
index 82bff83..e66abd9 100755
index e052e51..d44cff1 100755
--- a/Lib/webbrowser.py
+++ b/Lib/webbrowser.py
@@ -522,6 +522,11 @@ def register_standard_browsers():
@@ -723,14 +723,14 @@ index 82bff83..e66abd9 100755
2.24.0
From 9cc979f3c67832887fcd11595976828d3243d148 Mon Sep 17 00:00:00 2001
From 45c95fc5412a0fc1e15c60271f605c4b6a71afbc Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Sat, 30 Nov 2019 23:26:57 +0100
Subject: don't reinit locks on fork.
diff --git a/Lib/logging/__init__.py b/Lib/logging/__init__.py
index 6e01714..d84017a 100644
index b596f80..431f750 100644
--- a/Lib/logging/__init__.py
+++ b/Lib/logging/__init__.py
@@ -228,7 +228,7 @@ def _releaseLock():
@@ -745,3 +745,57 @@ index 6e01714..d84017a 100644
--
2.24.0
From 8401785ed0dcd5a7f372ac405126fe02154a6369 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Fri, 15 May 2020 15:20:57 +0200
Subject: handle errors returned by internal_connect()
upstream bug #40628 by Ryan C. Gordon
diff --git a/Modules/socketmodule.c b/Modules/socketmodule.c
index 3173b3b..88b66ed 100644
--- a/Modules/socketmodule.c
+++ b/Modules/socketmodule.c
@@ -3101,7 +3101,7 @@ sock_connect(PySocketSockObject *s, PyObject *addro)
return NULL;
res = internal_connect(s, SAS2SA(&addrbuf), addrlen, 1);
- if (res < 0)
+ if (res == -1)
return NULL;
Py_RETURN_NONE;
@@ -3127,7 +3127,7 @@ sock_connect_ex(PySocketSockObject *s, PyObject *addro)
return NULL;
res = internal_connect(s, SAS2SA(&addrbuf), addrlen, 0);
- if (res < 0)
+ if (res == -1)
return NULL;
return PyLong_FromLong((long) res);
--
2.24.0
From 5a948cadd0123f22c3b747d9e9cba9a9d9e22370 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Fri, 4 Oct 2019 22:02:35 +0200
Subject: since 3.8, don't reinit locks on fork.
diff --git a/Lib/logging/__init__.py b/Lib/logging/__init__.py
index 16812ec..54935bf 100644
--- a/Lib/logging/__init__.py
+++ b/Lib/logging/__init__.py
@@ -230,7 +230,7 @@ def _releaseLock():
# Prevent a held logging lock from blocking a child from logging.
-if not hasattr(os, 'register_at_fork'): # Windows and friends.
+if sys.platform.startswith('haiku') or not hasattr(os, 'register_at_fork'): # Windows and friends.
def _register_at_fork_reinit_lock(instance):
pass # no-op when os.register_at_fork does not exist.
else:
--
2.21.0