[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/pq e9e1998796 10/63: Handle booleans and fix some NULL
From: |
ELPA Syncer |
Subject: |
[elpa] externals/pq e9e1998796 10/63: Handle booleans and fix some NULL handling. |
Date: |
Mon, 14 Feb 2022 23:24:18 -0500 (EST) |
branch: externals/pq
commit e9e199879686662182f17e66848d89cb508b65a5
Author: Andreas Seltenreich <andreas+git@ansel.ydns.eu>
Commit: Andreas Seltenreich <andreas+git@ansel.ydns.eu>
Handle booleans and fix some NULL handling.
---
pq.c | 9 ++++++++-
test.el | 2 +-
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/pq.c b/pq.c
index 40f7158dee..fb3a12be4f 100644
--- a/pq.c
+++ b/pq.c
@@ -92,13 +92,20 @@ Fpq_connectdb (emacs_env *env, int nargs, emacs_value
args[], void *data)
static emacs_value
pq_getvalue_internal(emacs_env *env, PGresult *res, int row, int column)
{
+ if (PQgetisnull(res, row, column))
+ return Qnil;
+
char *result = PQgetvalue(res, row, column);
+ if (!result)
+ return Qnil;
switch(PQftype(res, column)) {
+ case BOOLOID:
+ return ('t' == *result) ? Qt : Qnil;
case INT2OID:
case INT4OID:
case OIDOID:
- return env->make_integer(env, atol(result));
+ return env->make_integer(env, atol(result));
case INT8OID:
case FLOAT4OID:
case FLOAT8OID:
diff --git a/test.el b/test.el
index 80fc0dab58..cf7e92e6e9 100644
--- a/test.el
+++ b/test.el
@@ -14,7 +14,7 @@
;; "'mo''oo\"oo'"
(pq:escapeIdentifier con "moo'oo\"oo")
;; "\"moo'oo\"\"oo\""
+(pq:query con "select true, false, NULL, version()")
(setq con (pq:connectdb))
-(pq:query con "select version()")
(setq con nil)
(garbage-collect)
- [elpa] externals/pq 9e719959b3 12/63: Avoid global variable for pq:error symbol., (continued)
- [elpa] externals/pq 9e719959b3 12/63: Avoid global variable for pq:error symbol., ELPA Syncer, 2022/02/14
- [elpa] externals/pq ca337173dd 08/63: Explicitly free the libpq result., ELPA Syncer, 2022/02/14
- [elpa] externals/pq e1d1b77b88 34/63: test: Notice receiver., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 499dc3b50e 57/63: Re-introduce custom error signal pq:error with SQLSTATE., ELPA Syncer, 2022/02/14
- [elpa] externals/pq d738d21b6a 52/63: Add checks for non-local exit., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 8151e0bc99 60/63: Add function pq:notifies to support LISTEN., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 46e38888e3 01/63: Initial commit., ELPA Syncer, 2022/02/14
- [elpa] externals/pq b72ee45524 02/63: Add .gitignore, flush tempfile., ELPA Syncer, 2022/02/14
- [elpa] externals/pq dfa4ad04bb 03/63: README: clarify., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 8e13d07737 16/63: Update Makefile, ELPA Syncer, 2022/02/14
- [elpa] externals/pq e9e1998796 10/63: Handle booleans and fix some NULL handling.,
ELPA Syncer <=
- [elpa] externals/pq 09e320f63f 29/63: Initial travis ci configuration, ELPA Syncer, 2022/02/14
- [elpa] externals/pq 76f81f5ca5 05/63: Replace low-level functions with a higher level one., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 1048d41b99 28/63: Use pg_config to detect postgresql include directory, ELPA Syncer, 2022/02/14
- [elpa] externals/pq fb79f059fb 19/63: Flush debug fprintf()s., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 2c03e4aba4 42/63: Make garbage-collection test more robust., ELPA Syncer, 2022/02/14
- [elpa] externals/pq dc688341b0 35/63: test: Check more raised errors in different parts of the code., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 33e626d5b8 11/63: README: It's no longer quick and dirty., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 45a732a4c2 31/63: Add test for signal error, ELPA Syncer, 2022/02/14
- [elpa] externals/pq 6ab076af29 26/63: Fix memory leak., ELPA Syncer, 2022/02/14
- [elpa] externals/pq 191b842a56 21/63: Add missing static declarations., ELPA Syncer, 2022/02/14