From e296d5c747d198401148efa08928bb5e91bce49a Mon Sep 17 00:00:00 2001 From: Joshua Shanks Date: Sat, 8 Nov 2025 12:12:56 -0800 Subject: [PATCH] libpq: Wrap out-of-memory error messages with libpq_gettext() User-facing error messages in libpq must use libpq_gettext() to enable translation when NLS is enabled. This change wraps all "out of memory" error strings across authentication, connection, and protocol modules to ensure they can be properly translated. Signed-off-by: Joshua Shanks --- src/interfaces/libpq/fe-auth-oauth.c | 16 ++++----- src/interfaces/libpq/fe-auth-scram.c | 16 ++++----- src/interfaces/libpq/fe-auth.c | 20 +++++------ src/interfaces/libpq/fe-cancel.c | 4 +-- src/interfaces/libpq/fe-connect.c | 46 ++++++++++++------------ src/interfaces/libpq/fe-exec.c | 8 ++--- src/interfaces/libpq/fe-gssapi-common.c | 2 +- src/interfaces/libpq/fe-lobj.c | 2 +- src/interfaces/libpq/fe-protocol3.c | 26 +++++++------- src/interfaces/libpq/fe-secure-common.c | 2 +- src/interfaces/libpq/fe-secure-gssapi.c | 4 +-- src/interfaces/libpq/fe-secure-openssl.c | 4 +-- 12 files changed, 75 insertions(+), 75 deletions(-) diff --git a/src/interfaces/libpq/fe-auth-oauth.c b/src/interfaces/libpq/fe-auth-oauth.c index d146c5f567c..0341ba01e7c 100644 --- a/src/interfaces/libpq/fe-auth-oauth.c +++ b/src/interfaces/libpq/fe-auth-oauth.c @@ -143,7 +143,7 @@ client_initial_response(PGconn *conn, bool discover) termPQExpBuffer(&buf); if (!response) - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return response; } @@ -479,7 +479,7 @@ issuer_from_well_known_uri(PGconn *conn, const char *wkuri) issuer = strdup(wkuri); if (!issuer) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return NULL; } @@ -713,7 +713,7 @@ run_user_oauth_flow(PGconn *conn) conn->oauth_token = strdup(request->token); if (!conn->oauth_token) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return PGRES_POLLING_FAILED; } @@ -1006,7 +1006,7 @@ setup_token_request(PGconn *conn, fe_oauth_state *state) conn->oauth_token = strdup(request.token); if (!conn->oauth_token) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); goto fail; } @@ -1019,7 +1019,7 @@ setup_token_request(PGconn *conn, fe_oauth_state *state) request_copy = malloc(sizeof(*request_copy)); if (!request_copy) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); goto fail; } @@ -1107,7 +1107,7 @@ setup_oauth_parameters(PGconn *conn) conn->oauth_discovery_uri = strdup(conn->oauth_issuer); if (!conn->oauth_discovery_uri) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return false; } } @@ -1120,7 +1120,7 @@ setup_oauth_parameters(PGconn *conn) conn->oauth_issuer_id = strdup(conn->oauth_issuer); if (!conn->oauth_issuer_id) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return false; } } @@ -1256,7 +1256,7 @@ oauth_exchange(void *opaq, bool final, *output = strdup(kvsep); if (unlikely(!*output)) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return SASL_FAILED; } *outputlen = strlen(*output); /* == 1 */ diff --git a/src/interfaces/libpq/fe-auth-scram.c b/src/interfaces/libpq/fe-auth-scram.c index f6d6a5aa977..76f65ac2ce1 100644 --- a/src/interfaces/libpq/fe-auth-scram.c +++ b/src/interfaces/libpq/fe-auth-scram.c @@ -371,7 +371,7 @@ build_client_first_message(fe_scram_state *state) state->client_nonce = malloc(encoded_len + 1); if (state->client_nonce == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return NULL; } encoded_len = pg_b64_encode(raw_nonce, SCRAM_RAW_NONCE_LEN, @@ -444,7 +444,7 @@ build_client_first_message(fe_scram_state *state) oom_error: termPQExpBuffer(&buf); - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return NULL; } @@ -596,7 +596,7 @@ build_client_final_message(fe_scram_state *state) oom_error: termPQExpBuffer(&buf); - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return NULL; } @@ -616,7 +616,7 @@ read_server_first_message(fe_scram_state *state, char *input) state->server_first_message = strdup(input); if (state->server_first_message == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return false; } @@ -640,7 +640,7 @@ read_server_first_message(fe_scram_state *state, char *input) state->nonce = strdup(nonce); if (state->nonce == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return false; } @@ -654,7 +654,7 @@ read_server_first_message(fe_scram_state *state, char *input) state->salt = malloc(decoded_salt_len); if (state->salt == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return false; } state->saltlen = pg_b64_decode(encoded_salt, @@ -700,7 +700,7 @@ read_server_final_message(fe_scram_state *state, char *input) state->server_final_message = strdup(input); if (!state->server_final_message) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return false; } @@ -736,7 +736,7 @@ read_server_final_message(fe_scram_state *state, char *input) decoded_server_signature = malloc(server_signature_len); if (!decoded_server_signature) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return false; } diff --git a/src/interfaces/libpq/fe-auth.c b/src/interfaces/libpq/fe-auth.c index 84a042269de..f0b5e715a4c 100644 --- a/src/interfaces/libpq/fe-auth.c +++ b/src/interfaces/libpq/fe-auth.c @@ -77,7 +77,7 @@ pg_GSS_continue(PGconn *conn, int payloadlen) ginbuf.value = malloc(payloadlen); if (!ginbuf.value) { - libpq_append_conn_error(conn, "out of memory allocating GSSAPI buffer (%d)", + libpq_append_conn_error(conn, libpq_gettext("out of memory allocating GSSAPI buffer (%d)"), payloadlen); return STATUS_ERROR; } @@ -243,7 +243,7 @@ pg_SSPI_continue(PGconn *conn, int payloadlen) inputbuf = malloc(payloadlen); if (!inputbuf) { - libpq_append_conn_error(conn, "out of memory allocating SSPI buffer (%d)", + libpq_append_conn_error(conn, libpq_gettext("out of memory allocating SSPI buffer (%d)"), payloadlen); return STATUS_ERROR; } @@ -305,7 +305,7 @@ pg_SSPI_continue(PGconn *conn, int payloadlen) conn->sspictx = malloc(sizeof(CtxtHandle)); if (conn->sspictx == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return STATUS_ERROR; } memcpy(conn->sspictx, &newContext, sizeof(CtxtHandle)); @@ -379,7 +379,7 @@ pg_SSPI_startup(PGconn *conn, int use_negotiate, int payloadlen) conn->sspicred = malloc(sizeof(CredHandle)); if (conn->sspicred == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return STATUS_ERROR; } @@ -413,7 +413,7 @@ pg_SSPI_startup(PGconn *conn, int use_negotiate, int payloadlen) conn->sspitarget = malloc(strlen(conn->krbsrvname) + strlen(host) + 2); if (!conn->sspitarget) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return STATUS_ERROR; } sprintf(conn->sspitarget, "%s/%s", conn->krbsrvname, host); @@ -691,7 +691,7 @@ error: oom_error: termPQExpBuffer(&mechanism_buf); free(initialresponse); - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return STATUS_ERROR; } @@ -713,7 +713,7 @@ pg_SASL_continue(PGconn *conn, int payloadlen, bool final, bool *async) challenge = malloc(payloadlen + 1); if (!challenge) { - libpq_append_conn_error(conn, "out of memory allocating SASL buffer (%d)", + libpq_append_conn_error(conn, libpq_gettext("out of memory allocating SASL buffer (%d)"), payloadlen); return STATUS_ERROR; } @@ -824,7 +824,7 @@ pg_password_sendauth(PGconn *conn, const char *password, AuthRequest areq) crypt_pwd = malloc(2 * (MD5_PASSWD_LEN + 1)); if (!crypt_pwd) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return STATUS_ERROR; } @@ -1327,7 +1327,7 @@ pg_fe_getusername(uid_t user_id, PQExpBuffer errorMessage) { result = strdup(name); if (result == NULL && errorMessage) - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); } return result; @@ -1490,7 +1490,7 @@ PQencryptPasswordConn(PGconn *conn, const char *passwd, const char *user, } } else - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); } else { diff --git a/src/interfaces/libpq/fe-cancel.c b/src/interfaces/libpq/fe-cancel.c index c872a0267f0..d65b4638651 100644 --- a/src/interfaces/libpq/fe-cancel.c +++ b/src/interfaces/libpq/fe-cancel.c @@ -175,7 +175,7 @@ PQcancelCreate(PGconn *conn) oom_error: cancelConn->status = CONNECTION_BAD; - libpq_append_conn_error(cancelConn, "out of memory"); + libpq_append_conn_error(cancelConn, libpq_gettext("out of memory")); return (PGcancelConn *) cancelConn; } @@ -778,7 +778,7 @@ PQrequestCancel(PGconn *conn) } else { - strlcpy(conn->errorMessage.data, "out of memory", + strlcpy(conn->errorMessage.data, libpq_gettext("out of memory"), conn->errorMessage.maxlen); r = false; } diff --git a/src/interfaces/libpq/fe-connect.c b/src/interfaces/libpq/fe-connect.c index 19bbc006669..4163f9cd1b3 100644 --- a/src/interfaces/libpq/fe-connect.c +++ b/src/interfaces/libpq/fe-connect.c @@ -1013,7 +1013,7 @@ fillPGconn(PGconn *conn, PQconninfoOption *connOptions) *connmember = strdup(tmp); if (*connmember == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return false; } } @@ -1053,7 +1053,7 @@ pqCopyPGconn(PGconn *srcConn, PGconn *dstConn) *dstConnmember = strdup(*tmp); if (*dstConnmember == NULL) { - libpq_append_conn_error(dstConn, "out of memory"); + libpq_append_conn_error(dstConn, libpq_gettext("out of memory")); return false; } } @@ -2182,7 +2182,7 @@ pqConnectOptions2(PGconn *conn) oom_error: conn->status = CONNECTION_BAD; - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return false; } @@ -2344,7 +2344,7 @@ PQsetdbLogin(const char *pghost, const char *pgport, const char *pgoptions, oom_error: conn->status = CONNECTION_BAD; - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return conn; } @@ -3737,7 +3737,7 @@ keep_going: /* We will come back to here until there is EnvironmentOptions); if (!startpacket) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); goto error_return; } @@ -5194,7 +5194,7 @@ store_conn_addrinfo(PGconn *conn, struct addrinfo *addrlist) conn->addr = calloc(conn->naddr, sizeof(AddrInfo)); if (conn->addr == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return 1; } @@ -5508,7 +5508,7 @@ ldapServiceLookup(const char *purl, PQconninfoOption *options, if ((url = strdup(purl)) == NULL) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); return 3; } @@ -5772,7 +5772,7 @@ ldapServiceLookup(const char *purl, PQconninfoOption *options, size += values[i]->bv_len + 1; if ((result = malloc(size)) == NULL) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); ldap_value_free_len(values); ldap_unbind(ld); return 3; @@ -5890,7 +5890,7 @@ ldapServiceLookup(const char *purl, PQconninfoOption *options, options[i].val = strdup(optval); if (!options[i].val) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); free(result); return 3; } @@ -6151,7 +6151,7 @@ parseServiceFile(const char *serviceFile, options[i].val = strdup(val); if (!options[i].val) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); result = 3; goto exit; } @@ -6194,7 +6194,7 @@ exit: options[i].val = strdup(serviceFile); if (options[i].val == NULL) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); result = 3; } break; @@ -6258,7 +6258,7 @@ conninfo_init(PQExpBuffer errorMessage) options = (PQconninfoOption *) malloc(sizeof(PQconninfoOption) * sizeof(PQconninfoOptions) / sizeof(PQconninfoOptions[0])); if (options == NULL) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); return NULL; } opt_dest = options; @@ -6356,7 +6356,7 @@ conninfo_parse(const char *conninfo, PQExpBuffer errorMessage, /* Need a modifiable copy of the input string */ if ((buf = strdup(conninfo)) == NULL) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); PQconninfoFree(options); return NULL; } @@ -6607,7 +6607,7 @@ conninfo_array_parse(const char *const *keywords, const char *const *values, options[k].val = strdup(str_option->val); if (!options[k].val) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); PQconninfoFree(options); PQconninfoFree(dbname_options); return NULL; @@ -6634,7 +6634,7 @@ conninfo_array_parse(const char *const *keywords, const char *const *values, option->val = strdup(pvalue); if (!option->val) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); PQconninfoFree(options); PQconninfoFree(dbname_options); return NULL; @@ -6710,7 +6710,7 @@ conninfo_add_defaults(PQconninfoOption *options, PQExpBuffer errorMessage) if (!option->val) { if (errorMessage) - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); return false; } continue; @@ -6733,7 +6733,7 @@ conninfo_add_defaults(PQconninfoOption *options, PQExpBuffer errorMessage) if (!option->val) { if (errorMessage) - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); return false; } continue; @@ -6757,7 +6757,7 @@ conninfo_add_defaults(PQconninfoOption *options, PQExpBuffer errorMessage) if (!option->val) { if (errorMessage) - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); return false; } continue; @@ -6792,7 +6792,7 @@ conninfo_add_defaults(PQconninfoOption *options, PQExpBuffer errorMessage) if (!sslmode_default->val) { if (errorMessage) - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); return false; } } @@ -6878,7 +6878,7 @@ conninfo_uri_parse_options(PQconninfoOption *options, const char *uri, initPQExpBuffer(&portbuf); if (PQExpBufferDataBroken(hostbuf) || PQExpBufferDataBroken(portbuf)) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); goto cleanup; } @@ -6886,7 +6886,7 @@ conninfo_uri_parse_options(PQconninfoOption *options, const char *uri, buf = strdup(uri); if (buf == NULL) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); goto cleanup; } start = buf; @@ -7243,7 +7243,7 @@ conninfo_uri_decode(const char *str, PQExpBuffer errorMessage) buf = malloc(strlen(str) + 1); if (buf == NULL) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); return NULL; } p = buf; @@ -7425,7 +7425,7 @@ conninfo_storeval(PQconninfoOption *connOptions, value_copy = strdup(value); if (value_copy == NULL) { - libpq_append_error(errorMessage, "out of memory"); + libpq_append_error(errorMessage, libpq_gettext("out of memory")); return NULL; } } diff --git a/src/interfaces/libpq/fe-exec.c b/src/interfaces/libpq/fe-exec.c index 0b1e37ec30b..a98ab0e833d 100644 --- a/src/interfaces/libpq/fe-exec.c +++ b/src/interfaces/libpq/fe-exec.c @@ -1323,7 +1323,7 @@ pqAllocCmdQueueEntry(PGconn *conn) entry = (PGcmdQueueEntry *) malloc(sizeof(PGcmdQueueEntry)); if (entry == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return NULL; } } @@ -3262,7 +3262,7 @@ pqPipelineProcessQueue(PGconn *conn) conn->result = PQmakeEmptyPGresult(conn, PGRES_PIPELINE_ABORTED); if (!conn->result) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); pqSaveErrorResult(conn); return; } @@ -4301,7 +4301,7 @@ PQescapeInternal(PGconn *conn, const char *str, size_t len, bool as_ident) result = rp = (char *) malloc(result_size); if (rp == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return NULL; } @@ -4467,7 +4467,7 @@ PQescapeByteaInternal(PGconn *conn, if (rp == NULL) { if (conn) - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return NULL; } diff --git a/src/interfaces/libpq/fe-gssapi-common.c b/src/interfaces/libpq/fe-gssapi-common.c index 1ae2bd24c1d..bd7310cef6b 100644 --- a/src/interfaces/libpq/fe-gssapi-common.c +++ b/src/interfaces/libpq/fe-gssapi-common.c @@ -106,7 +106,7 @@ pg_GSS_load_servicename(PGconn *conn) temp_gbuf.value = (char *) malloc(maxlen); if (!temp_gbuf.value) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return STATUS_ERROR; } snprintf(temp_gbuf.value, maxlen, "%s@%s", diff --git a/src/interfaces/libpq/fe-lobj.c b/src/interfaces/libpq/fe-lobj.c index 05e17bed508..d3db89f3f38 100644 --- a/src/interfaces/libpq/fe-lobj.c +++ b/src/interfaces/libpq/fe-lobj.c @@ -867,7 +867,7 @@ lo_initialize(PGconn *conn) lobjfuncs = (PGlobjfuncs *) malloc(sizeof(PGlobjfuncs)); if (lobjfuncs == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return -1; } MemSet(lobjfuncs, 0, sizeof(PGlobjfuncs)); diff --git a/src/interfaces/libpq/fe-protocol3.c b/src/interfaces/libpq/fe-protocol3.c index da7a8db68c8..3bf8e95b5bf 100644 --- a/src/interfaces/libpq/fe-protocol3.c +++ b/src/interfaces/libpq/fe-protocol3.c @@ -208,7 +208,7 @@ pqParseInput3(PGconn *conn) PGRES_COMMAND_OK); if (!conn->result) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); pqSaveErrorResult(conn); } } @@ -231,7 +231,7 @@ pqParseInput3(PGconn *conn) PGRES_PIPELINE_SYNC); if (!conn->result) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); pqSaveErrorResult(conn); } else @@ -254,7 +254,7 @@ pqParseInput3(PGconn *conn) PGRES_EMPTY_QUERY); if (!conn->result) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); pqSaveErrorResult(conn); } } @@ -271,7 +271,7 @@ pqParseInput3(PGconn *conn) PGRES_COMMAND_OK); if (!conn->result) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); pqSaveErrorResult(conn); } } @@ -292,7 +292,7 @@ pqParseInput3(PGconn *conn) PGRES_COMMAND_OK); if (!conn->result) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); pqSaveErrorResult(conn); } } @@ -366,7 +366,7 @@ pqParseInput3(PGconn *conn) PGRES_COMMAND_OK); if (!conn->result) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); pqSaveErrorResult(conn); } } @@ -987,7 +987,7 @@ pqGetErrorNotice3(PGconn *conn, bool isError) } if (PQExpBufferDataBroken(workBuf)) - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); else appendPQExpBufferStr(&conn->errorMessage, workBuf.data); } @@ -1539,7 +1539,7 @@ getParameterStatus(PGconn *conn) /* And save it */ if (!pqSaveParameterStatus(conn, conn->workBuffer.data, valueBuf.data)) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); handleFatalError(conn); } termPQExpBuffer(&valueBuf); @@ -1593,7 +1593,7 @@ getBackendKeyData(PGconn *conn, int msgLength) conn->be_cancel_key = malloc(cancel_key_len); if (conn->be_cancel_key == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); handleFatalError(conn); return 0; } @@ -1639,7 +1639,7 @@ getNotify(PGconn *conn) * "async error", so the best we can do is drop the connection. That * seems better than silently ignoring the notification. */ - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); handleFatalError(conn); return 0; } @@ -1660,7 +1660,7 @@ getNotify(PGconn *conn) if (!newNotify) { free(svname); - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); handleFatalError(conn); return 0; } @@ -1917,7 +1917,7 @@ pqGetCopyData3(PGconn *conn, char **buffer, int async) *buffer = (char *) malloc(msgLength + 1); if (*buffer == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return -2; } memcpy(*buffer, &conn->inBuffer[conn->inCursor], msgLength); @@ -2318,7 +2318,7 @@ pqFunctionCall3(PGconn *conn, Oid fnid, conn->result = PQmakeEmptyPGresult(conn, status); if (!conn->result) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); pqSaveErrorResult(conn); } } diff --git a/src/interfaces/libpq/fe-secure-common.c b/src/interfaces/libpq/fe-secure-common.c index 56d0d612eed..df8ae47271c 100644 --- a/src/interfaces/libpq/fe-secure-common.c +++ b/src/interfaces/libpq/fe-secure-common.c @@ -107,7 +107,7 @@ pq_verify_peer_name_matches_certificate_name(PGconn *conn, name = malloc(namelen + 1); if (name == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return -1; } memcpy(name, namedata, namelen); diff --git a/src/interfaces/libpq/fe-secure-gssapi.c b/src/interfaces/libpq/fe-secure-gssapi.c index 843b31e175f..3e5c9158623 100644 --- a/src/interfaces/libpq/fe-secure-gssapi.c +++ b/src/interfaces/libpq/fe-secure-gssapi.c @@ -505,7 +505,7 @@ pqsecure_open_gss(PGconn *conn) PqGSSResultBuffer = malloc(PQ_GSS_AUTH_BUFFER_SIZE); if (!PqGSSSendBuffer || !PqGSSRecvBuffer || !PqGSSResultBuffer) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return PGRES_POLLING_FAILED; } PqGSSSendLength = PqGSSSendNext = PqGSSSendConsumed = 0; @@ -696,7 +696,7 @@ pqsecure_open_gss(PGconn *conn) PqGSSResultBuffer = malloc(PQ_GSS_MAX_PACKET_SIZE); if (!PqGSSSendBuffer || !PqGSSRecvBuffer || !PqGSSResultBuffer) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return PGRES_POLLING_FAILED; } PqGSSSendLength = PqGSSSendNext = PqGSSSendConsumed = 0; diff --git a/src/interfaces/libpq/fe-secure-openssl.c b/src/interfaces/libpq/fe-secure-openssl.c index 51dd7b9fec0..95a59755975 100644 --- a/src/interfaces/libpq/fe-secure-openssl.c +++ b/src/interfaces/libpq/fe-secure-openssl.c @@ -402,7 +402,7 @@ pgtls_get_peer_certificate_hash(PGconn *conn, size_t *len) cert_hash = malloc(hash_size); if (cert_hash == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return NULL; } memcpy(cert_hash, hash, hash_size); @@ -1132,7 +1132,7 @@ initialize_SSL(PGconn *conn) if (engine_str == NULL) { - libpq_append_conn_error(conn, "out of memory"); + libpq_append_conn_error(conn, libpq_gettext("out of memory")); return -1; } -- 2.34.1