Don't clobber an eventual Python exception set by a green thread

This commit is contained in:
Daniele Varrazzo 2011-06-05 16:30:37 +01:00
parent 8f876d4b5d
commit 709df38d79

View File

@ -343,12 +343,12 @@ pq_execute_command_locked(connectionObject *conn, const char *query,
*tstate = PyEval_SaveThread();
}
if (*pgres == NULL) {
const char *msg;
Dprintf("pq_execute_command_locked: PQexec returned NULL");
msg = PQerrorMessage(conn->pgconn);
if (msg)
*error = strdup(msg);
if (!PyErr_Occurred()) {
const char *msg;
msg = PQerrorMessage(conn->pgconn);
if (msg && *msg) { *error = strdup(msg); }
}
goto cleanup;
}
@ -362,7 +362,7 @@ pq_execute_command_locked(connectionObject *conn, const char *query,
retvalue = 0;
IFCLEARPGRES(*pgres);
cleanup:
cleanup:
return retvalue;
}