diff --git a/src/python/src/grpc/_adapter/_c/utility.c b/src/python/src/grpc/_adapter/_c/utility.c
index 6722b53f840e3e5f50c6e5d41c118f4200502294..e3139f28874e4635f06504b355c8819c906d58eb 100644
--- a/src/python/src/grpc/_adapter/_c/utility.c
+++ b/src/python/src/grpc/_adapter/_c/utility.c
@@ -40,6 +40,7 @@
 #include <grpc/support/alloc.h>
 #include <grpc/support/slice.h>
 #include <grpc/support/time.h>
+#include <grpc/support/string_util.h>
 
 #include "grpc/_adapter/_c/types.h"
 
@@ -156,9 +157,10 @@ int pygrpc_produce_op(PyObject *op, grpc_op *result) {
     return 0;
   }
   if (PyTuple_Size(op) != OP_TUPLE_SIZE) {
-    char buf[64];
-    snprintf(buf, sizeof(buf), "expected tuple op of length %d", OP_TUPLE_SIZE);
+    char *buf;
+    gpr_asprintf(&buf, "expected tuple op of length %d", OP_TUPLE_SIZE);
     PyErr_SetString(PyExc_ValueError, buf);
+    gpr_free(buf);
     return 0;
   }
   type = PyInt_AsLong(PyTuple_GET_ITEM(op, TYPE_INDEX));
@@ -353,9 +355,14 @@ double pygrpc_cast_gpr_timespec_to_double(gpr_timespec timespec) {
   return timespec.tv_sec + 1e-9*timespec.tv_nsec;
 }
 
+/* Because C89 doesn't have a way to check for infinity... */
+static int pygrpc_isinf(double x) {
+  return x * 0 != 0;
+}
+
 gpr_timespec pygrpc_cast_double_to_gpr_timespec(double seconds) {
   gpr_timespec result;
-  if isinf(seconds) {
+  if (pygrpc_isinf(seconds)) {
     result = seconds > 0.0 ? gpr_inf_future : gpr_inf_past;
   } else {
     result.tv_sec = (time_t)seconds;
diff --git a/tools/run_tests/build_python.sh b/tools/run_tests/build_python.sh
index d0f09e4d8be3968e293a2fc35a323ac641d9963a..53db6af0ea16942b15daabce3ca3a421beca3a45 100755
--- a/tools/run_tests/build_python.sh
+++ b/tools/run_tests/build_python.sh
@@ -38,5 +38,5 @@ rm -rf python2.7_virtual_environment
 virtualenv -p /usr/bin/python2.7 python2.7_virtual_environment
 source python2.7_virtual_environment/bin/activate
 pip install -r src/python/requirements.txt
-CFLAGS=-I$root/include LDFLAGS=-L$root/libs/$CONFIG pip install src/python/src
+CFLAGS="-I$root/include -std=c89" LDFLAGS=-L$root/libs/$CONFIG pip install src/python/src
 pip install src/python/interop