diff --git a/Modules/resource.c b/Modules/resource.c
index d38c660..38974f9 100644
--- a/Modules/resource.c
+++ b/Modules/resource.c
@@ -147,7 +147,7 @@
 	int resource;
 	PyObject *curobj, *maxobj;
 
-	if (!PyArg_ParseTuple(args, "i(OO):setrlimit", 
+	if (!PyArg_ParseTuple(args, "i(OO):setrlimit",
 			      &resource, &curobj, &maxobj))
 		return NULL;
 
@@ -159,27 +159,27 @@
 
 #if !defined(HAVE_LARGEFILE_SUPPORT)
 	rl.rlim_cur = PyInt_AsLong(curobj);
-	if (rl.rlim_cur == -1 && PyErr_Occurred())
+	if (rl.rlim_cur == (rlim_t)-1 && PyErr_Occurred())
 	    return NULL;
 	rl.rlim_max = PyInt_AsLong(maxobj);
-	if (rl.rlim_max == -1 && PyErr_Occurred())
+	if (rl.rlim_max == (rlim_t)-1 && PyErr_Occurred())
 	    return NULL;
 #else
 	/* The limits are probably bigger than a long */
 	rl.rlim_cur = PyLong_Check(curobj) ?
 		PyLong_AsLongLong(curobj) : PyInt_AsLong(curobj);
-	if (rl.rlim_cur == -1 && PyErr_Occurred())
+	if (rl.rlim_cur == (rlim_t)-1 && PyErr_Occurred())
 	    return NULL;
 	rl.rlim_max = PyLong_Check(maxobj) ?
 		PyLong_AsLongLong(maxobj) : PyInt_AsLong(maxobj);
-	if (rl.rlim_max == -1 && PyErr_Occurred())
+	if (rl.rlim_max == (rlim_t)-1 && PyErr_Occurred())
 	    return NULL;
 #endif
 
 	rl.rlim_cur = rl.rlim_cur & RLIM_INFINITY;
 	rl.rlim_max = rl.rlim_max & RLIM_INFINITY;
 	if (setrlimit(resource, &rl) == -1) {
-		if (errno == EINVAL) 
+		if (errno == EINVAL)
 			PyErr_SetString(PyExc_ValueError,
 					"current limit exceeds maximum limit");
 		else if (errno == EPERM)
