Proper error handling for persistent connections.

This commit is contained in:
Ilia Alshanetsky 2005-12-20 14:50:12 +00:00
parent cd82349b9e
commit 5961160f95

View file

@ -43,9 +43,9 @@ int _pdo_sqlite_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt, const char *file, int li
if (einfo->errcode != SQLITE_OK) { if (einfo->errcode != SQLITE_OK) {
if (einfo->errmsg) { if (einfo->errmsg) {
efree(einfo->errmsg); pefree(einfo->errmsg, dbh->is_persistent);
} }
einfo->errmsg = estrdup((char*)sqlite3_errmsg(H->db)); einfo->errmsg = pestrdup((char*)sqlite3_errmsg(H->db), dbh->is_persistent);
} else { /* no error */ } else { /* no error */
strcpy(*pdo_err, PDO_ERR_NONE); strcpy(*pdo_err, PDO_ERR_NONE);
return 0; return 0;
@ -144,7 +144,7 @@ static int sqlite_handle_closer(pdo_dbh_t *dbh TSRMLS_DC) /* {{{ */
H->db = NULL; H->db = NULL;
} }
if (einfo->errmsg) { if (einfo->errmsg) {
efree(einfo->errmsg); pefree(einfo->errmsg, dbh->is_persistent);
einfo->errmsg = NULL; einfo->errmsg = NULL;
} }
pefree(H, dbh->is_persistent); pefree(H, dbh->is_persistent);