emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/pq 8964028f11 25/63: Coerce non-string query parameters


From: ELPA Syncer
Subject: [elpa] externals/pq 8964028f11 25/63: Coerce non-string query parameters into strings.
Date: Mon, 14 Feb 2022 23:24:22 -0500 (EST)

branch: externals/pq
commit 8964028f11e101bc94163c80dc3cfc26a7f08d1d
Author: Andreas Seltenreich <seltenreich@gmx.de>
Commit: Andreas Seltenreich <seltenreich@gmx.de>

    Coerce non-string query parameters into strings.
---
 pq.c | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/pq.c b/pq.c
index bb55643ddd..b9d68ca0b2 100644
--- a/pq.c
+++ b/pq.c
@@ -64,6 +64,17 @@ static bool result_ok(emacs_env *env, PGresult *res)
 static char *my_string_to_c(emacs_env *env, emacs_value string)
 {
   ptrdiff_t size;
+  emacs_value teststring = env->make_string(env, "", 0);
+
+  if (!env->eq(env,
+              env->type_of(env, teststring),
+              env->type_of(env, string))) {
+       emacs_value Fprin1_to_string =
+           env->intern(env, "prin1-to-string");
+       string = env->funcall(env, Fprin1_to_string,
+                            1, &string);
+  }
+
   env->copy_string_contents(env, string, 0, &size);
   char *buf = malloc(size);
   env->copy_string_contents(env, string, buf, &size);



reply via email to

[Prev in Thread] Current Thread [Next in Thread]