From fe92eef85b081640e20b787c99282544e148fc1c Mon Sep 17 00:00:00 2001 From: Neal Norwitz Date: Sun, 6 Jun 2004 20:13:10 +0000 Subject: [PATCH] Valgrind was reporting an uninitialized read for bad input. This fixes the problem and the test passes. I'm not sure the test is really correct though. It seems like it would be better to raise an exception. I think that wasn't done for backwards compatability. Bugfix candidate. --- Modules/binascii.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Modules/binascii.c b/Modules/binascii.c index 9cc49f69051..f1f961516a2 100644 --- a/Modules/binascii.c +++ b/Modules/binascii.c @@ -204,7 +204,8 @@ binascii_a2b_uu(PyObject *self, PyObject *args) bin_data = (unsigned char *)PyString_AsString(rv); for( ; bin_len > 0 ; ascii_len--, ascii_data++ ) { - this_ch = *ascii_data; + /* XXX is it really best to add NULs if there's no more data */ + this_ch = (ascii_len > 0) ? *ascii_data : 0; if ( this_ch == '\n' || this_ch == '\r' || ascii_len <= 0) { /* ** Whitespace. Assume some spaces got eaten at