diff --git a/Misc/NEWS b/Misc/NEWS
index 1ed5172..beedb0c 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -2201,6 +2201,9 @@
 Extension Modules
 -----------------
 
+- Issue #9959: Tweak formula used for computing math.log of an integer,
+  making it marginally more accurate for exact powers of 2.
+
 - Issue #9422: Fix memory leak when re-initializing a struct.Struct object.
 
 - Issue #7900: The getgroups(2) system call on MacOSX behaves rather oddly
diff --git a/Modules/mathmodule.c b/Modules/mathmodule.c
index 69e1423..3cfb5f7 100644
--- a/Modules/mathmodule.c
+++ b/Modules/mathmodule.c
@@ -1572,12 +1572,14 @@
                             "math domain error");
             return NULL;
         }
-        /* Special case for log(1), to make sure we get an
-           exact result there. */
-        if (e == 1 && x == 0.5)
-            return PyFloat_FromDouble(0.0);
-        /* Value is ~= x * 2**e, so the log ~= log(x) + log(2) * e. */
-        x = func(x) + func(2.0) * e;
+        /* Value is ~= x * 2**e, so the log ~= log(x) + log(2) * e.
+
+           It's slightly better to compute the log as log(2 * x) + log(2) * (e
+           - 1): then when 'arg' is a power of 2, 2**k say, this gives us 0.0 +
+           log(2) * k instead of log(0.5) + log(2)*(k+1), and so marginally
+           increases the chances of log(arg, 2) returning the correct result.
+        */
+        x = func(2.0 * x) + func(2.0) * (e - 1);
         return PyFloat_FromDouble(x);
     }
 
