Changeset 652


Ignore:
Timestamp:
Nov 27, 2015, 5:30:33 PM (4 years ago)
Author:
cito
Message:

Fix issue with some cleanup code in the C module

Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/4.x/module/pgmodule.c

    r645 r652  
    26122612                                if (*s == NULL)
    26132613                                {
    2614                                         free(lparms); free(parms); free(str);
    2615                                         PyErr_SetString(PyExc_UnicodeError, "query parameter"
    2616                                                 " could not be decoded (bad client encoding)");
     2614                                        free(lparms); free(parms);
    26172615                                        while (i--)
    26182616                                        {
     
    26222620                                                }
    26232621                                        }
     2622                                        free(str);
     2623                                        PyErr_SetString(PyExc_UnicodeError, "query parameter"
     2624                                                " could not be decoded (bad client encoding)");
    26242625                                        return NULL;
    26252626                                }
     
    26322633                                if (*s == NULL)
    26332634                                {
    2634                                         free(lparms); free(parms); free(str);
    2635                                         PyErr_SetString(PyExc_TypeError,
    2636                                                 "query parameter has no string representation");
     2635                                        free(lparms); free(parms);
    26372636                                        while (i--)
    26382637                                        {
     
    26422641                                                }
    26432642                                        }
     2643                                        free(str);
     2644                                        PyErr_SetString(PyExc_TypeError,
     2645                                                "query parameter has no string representation");
    26442646                                        return NULL;
    26452647                                }
  • trunk/module/pgmodule.c

    r645 r652  
    12171217                                if (!*s)
    12181218                                {
    1219                                         free(lparms); free(parms); free(str);
     1219                                        free(lparms); free(parms);
    12201220                                        while (i--)
    12211221                                        {
     
    12251225                                                }
    12261226                                        }
    1227                                         return NULL; /* pass the UnicodeEncodeError */
     1227                                        free(str);
     1228                                        /* pass the UnicodeEncodeError */
     1229                                        return NULL;
    12281230                                }
    12291231                                PyBytes_AsStringAndSize(*s, p, (Py_ssize_t *)l);
     
    12341236                                if (!*s)
    12351237                                {
    1236                                         free(lparms); free(parms); free(str);
     1238                                        free(lparms); free(parms);
    12371239                                        while (i--)
    12381240                                        {
     
    12421244                                                }
    12431245                                        }
     1246                                        free(str);
    12441247                                        PyErr_SetString(PyExc_TypeError,
    12451248                                                "query parameter has no string representation");
Note: See TracChangeset for help on using the changeset viewer.