From 662390681e94fd4437ee000d23d042a0135aa234 Mon Sep 17 00:00:00 2001 From: Neal Norwitz Date: Mon, 4 Nov 2002 23:21:09 +0000 Subject: SF #633013, Fix NIS causing interpreter core dump Prevent the lengths passed to PyString_FromStringAndSize() from being negative in some cases. --- Modules/nismodule.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Modules/nismodule.c b/Modules/nismodule.c index f66e9a1..0a38ee8 100644 --- a/Modules/nismodule.c +++ b/Modules/nismodule.c @@ -85,8 +85,10 @@ nis_foreach (int instatus, char *inkey, int inkeylen, char *inval, int err; if (indata->fix) { - inkeylen--; - invallen--; + if (inkeylen > 0 && inkey[inkeylen-1] == '\0') + inkeylen--; + if (invallen > 0 && inval[invallen-1] == '\0') + invallen--; } key = PyString_FromStringAndSize(inkey, inkeylen); val = PyString_FromStringAndSize(inval, invallen); -- cgit v0.12