Properly implement Georg Brandl's Patch #1185447 to the 2.5 maintainance branch

This commit is contained in:
Kristján Valur Jónsson 2007-04-22 10:18:46 +00:00
parent 15136b3669
commit b9d39916ac

View file

@ -1160,13 +1160,14 @@ binascii_b2a_qp (PyObject *self, PyObject *args, PyObject *kwargs)
if ((data[in] > 126) ||
(data[in] == '=') ||
(header && data[in] == '_') ||
((data[in] == '.') && (linelen == 1)) ||
((data[in] == '.') && (linelen == 0) &&
(data[in+1] == '\n' || data[in+1] == '\r' || data[in+1] == 0)) ||
(!istext && ((data[in] == '\r') || (data[in] == '\n'))) ||
((data[in] == '\t' || data[in] == ' ') && (in + 1 == datalen)) ||
((data[in] < 33) &&
(data[in] != '\r') && (data[in] != '\n') &&
(!quotetabs ||
(quotetabs && ((data[in] != '\t') && (data[in] != ' '))))))
(quotetabs ||
(!quotetabs && ((data[in] != '\t') && (data[in] != ' '))))))
{
if ((linelen + 3) >= MAXLINESIZE) {
linelen = 0;
@ -1231,13 +1232,14 @@ binascii_b2a_qp (PyObject *self, PyObject *args, PyObject *kwargs)
if ((data[in] > 126) ||
(data[in] == '=') ||
(header && data[in] == '_') ||
((data[in] == '.') && (linelen == 1)) ||
((data[in] == '.') && (linelen == 0) &&
(data[in+1] == '\n' || data[in+1] == '\r' || data[in+1] == 0)) ||
(!istext && ((data[in] == '\r') || (data[in] == '\n'))) ||
((data[in] == '\t' || data[in] == ' ') && (in + 1 == datalen)) ||
((data[in] < 33) &&
(data[in] != '\r') && (data[in] != '\n') &&
(!quotetabs ||
(quotetabs && ((data[in] != '\t') && (data[in] != ' '))))))
(quotetabs ||
(!quotetabs && ((data[in] != '\t') && (data[in] != ' '))))))
{
if ((linelen + 3 )>= MAXLINESIZE) {
odata[out++] = '=';