mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-12-21 08:29:39 +08:00
libpq: Report strerror on pthread_mutex_lock() failure
This commit is contained in:
parent
f1d5fce7cf
commit
fe885c6e36
@ -256,14 +256,18 @@ pqsecure_open_client(PGconn *conn)
|
||||
/* First time through? */
|
||||
if (conn->ssl == NULL)
|
||||
{
|
||||
#ifdef ENABLE_THREAD_SAFETY
|
||||
int rc;
|
||||
#endif
|
||||
|
||||
/* We cannot use MSG_NOSIGNAL to block SIGPIPE when using SSL */
|
||||
conn->sigpipe_flag = false;
|
||||
|
||||
#ifdef ENABLE_THREAD_SAFETY
|
||||
if (pthread_mutex_lock(&ssl_config_mutex))
|
||||
if ((rc = pthread_mutex_lock(&ssl_config_mutex)))
|
||||
{
|
||||
printfPQExpBuffer(&conn->errorMessage,
|
||||
libpq_gettext("unable to acquire mutex\n"));
|
||||
libpq_gettext("could not acquire mutex: %s\n"), strerror(rc));
|
||||
return PGRES_POLLING_FAILED;
|
||||
}
|
||||
#endif
|
||||
@ -1115,10 +1119,12 @@ initialize_SSL(PGconn *conn)
|
||||
* SSL_context struct.
|
||||
*/
|
||||
#ifdef ENABLE_THREAD_SAFETY
|
||||
if (pthread_mutex_lock(&ssl_config_mutex))
|
||||
int rc;
|
||||
|
||||
if ((rc = pthread_mutex_lock(&ssl_config_mutex)))
|
||||
{
|
||||
printfPQExpBuffer(&conn->errorMessage,
|
||||
libpq_gettext("unable to acquire mutex\n"));
|
||||
libpq_gettext("could not acquire mutex: %s\n"), strerror(rc));
|
||||
return -1;
|
||||
}
|
||||
#endif
|
||||
@ -1333,10 +1339,12 @@ initialize_SSL(PGconn *conn)
|
||||
X509_STORE *cvstore;
|
||||
|
||||
#ifdef ENABLE_THREAD_SAFETY
|
||||
if (pthread_mutex_lock(&ssl_config_mutex))
|
||||
int rc;
|
||||
|
||||
if ((rc = pthread_mutex_lock(&ssl_config_mutex)))
|
||||
{
|
||||
printfPQExpBuffer(&conn->errorMessage,
|
||||
libpq_gettext("unable to acquire mutex\n"));
|
||||
libpq_gettext("could not acquire mutex: %s\n"), strerror(rc));
|
||||
return -1;
|
||||
}
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user