[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/pq 69d6fba048 06/63: Make argument to pq:connectdb opti
From: |
ELPA Syncer |
Subject: |
[elpa] externals/pq 69d6fba048 06/63: Make argument to pq:connectdb optional. |
Date: |
Mon, 14 Feb 2022 23:24:18 -0500 (EST) |
branch: externals/pq
commit 69d6fba04870c3c88d74575dc1b299f383acd77b
Author: Andreas Seltenreich <andreas+git@ansel.ydns.eu>
Commit: Andreas Seltenreich <andreas+git@ansel.ydns.eu>
Make argument to pq:connectdb optional.
---
pq.c | 11 +++++++----
test.el | 2 ++
2 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/pq.c b/pq.c
index 9ecda93aa3..f21a27a459 100644
--- a/pq.c
+++ b/pq.c
@@ -29,6 +29,7 @@ bool result_ok(emacs_env *env, PGresult *res)
{
int status = PQresultStatus(res);
switch (status) {
+ case PGRES_NONFATAL_ERROR:
case PGRES_TUPLES_OK:
case PGRES_SINGLE_TUPLE:
case PGRES_COMMAND_OK:
@@ -59,7 +60,7 @@ static char *my_string_to_c(emacs_env *env, emacs_value
string)
static emacs_value
Fpq_connectdb (emacs_env *env, int nargs, emacs_value args[], void *data)
{
- char *conninfo = my_string_to_c(env, args[0]);
+ char *conninfo = nargs ? my_string_to_c(env, args[0]) : "";
PGconn *conn = PQconnectdb(conninfo);
char *errmsg = PQerrorMessage(conn);
@@ -67,12 +68,14 @@ Fpq_connectdb (emacs_env *env, int nargs, emacs_value
args[], void *data)
emacs_value errstring = env->make_string(env, errmsg, strlen(errmsg));
env->non_local_exit_signal(env, Qpq_error, errstring);
- free(conninfo);
+ if (nargs)
+ free(conninfo);
PQfinish(conn);
return Qnil;
}
fprintf(stderr, "PQconnectdb(%s) -> %p\n", conninfo, conn);
- free(conninfo);
+ if (nargs)
+ free(conninfo);
return env->make_user_ptr(env, pq_finalize_pointer, conn);
}
@@ -204,7 +207,7 @@ emacs_module_init (struct emacs_runtime *init_ert)
env = ert->get_environment(ert);
emacs_value fun1 = env->make_function (env,
- 1, /* min. number of arguments */
+ 0, /* min. number of arguments */
1, /* max. number of arguments */
Fpq_connectdb, /* actual function pointer */
"Connect to PostgreSQL database described by CONNSTR.",
/* docstring */
diff --git a/test.el b/test.el
index 8dd6d0ec3c..80fc0dab58 100644
--- a/test.el
+++ b/test.el
@@ -14,5 +14,7 @@
;; "'mo''oo\"oo'"
(pq:escapeIdentifier con "moo'oo\"oo")
;; "\"moo'oo\"\"oo\""
+(setq con (pq:connectdb))
+(pq:query con "select version()")
(setq con nil)
(garbage-collect)
- [elpa] branch externals/pq created (now 04c91e8374), ELPA Syncer, 2022/02/14
- [elpa] externals/pq 03c4dbf3f9 04/63: Add pq:getrow., ELPA Syncer, 2022/02/14
- [elpa] externals/pq f743c450ac 09/63: Set application_name., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 8cbe2e24fc 36/63: Make test notice-receiver more robust., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 5fcaa751f2 13/63: Cleanup prototype definitions., ELPA Syncer, 2022/02/14
- [elpa] externals/pq d6e3746c80 40/63: Skip encoding test unless supported by server., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 69d6fba048 06/63: Make argument to pq:connectdb optional.,
ELPA Syncer <=
- [elpa] externals/pq 37e21db4c2 41/63: Shuffle tests, make gc test emit more info on failure., ELPA Syncer, 2022/02/14
- [elpa] externals/pq cdc04b0b61 27/63: Add missing PQclear calls, ELPA Syncer, 2022/02/14
- [elpa] externals/pq 6f6d8728e5 38/63: Test expected error on invalid encoding., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 527e544165 46/63: Improve error handling on connection failure., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 7a15153e8d 58/63: Protect against NULL SQLSTATE., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 966a05ef25 07/63: Initialize client_encoding to utf8., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 2f63308225 24/63: Use PQexec instead of PQexecParams when no parameters are specified., ELPA Syncer, 2022/02/14
- [elpa] externals/pq a70d1fe40d 37/63: Test encoding by using some high unicode codepoints., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 795260553a 17/63: Use load-path in test.el, ELPA Syncer, 2022/02/14
- [elpa] externals/pq a03d2c2e9b 44/63: Update README, ELPA Syncer, 2022/02/14