$OpenBSD: patch-Modules_mathmodule_c,v 1.2 2009/05/03 22:26:27 djm Exp $
--- Modules/mathmodule.c.orig	Mon Dec 22 04:01:26 2008
+++ Modules/mathmodule.c	Sun Apr 19 10:28:53 2009
@@ -235,7 +235,7 @@ math_1(PyObject *arg, double (*func) (double), int can
 		else
 			errno = 0;
 	}
-	else if (Py_IS_INFINITY(r)) {
+	else if (errno != EDOM && Py_IS_INFINITY(r)) {
 		if (Py_IS_FINITE(x))
 			errno = can_overflow ? ERANGE : EDOM;
 		else
