--- Begin Message ---
Subject: |
30.0.50; Avoid nreverse in row_to_value |
Date: |
Mon, 30 Jan 2023 08:30:14 +0100 |
User-agent: |
Gnus/5.13 (Gnus v5.13) |
The function row_to_value in the file src/sqlite.c can avoid the call to
Fnreverse by traversing the row in reverse order. Only a minor
improvement but the change is simple.
diff --git a/src/sqlite.c b/src/sqlite.c
index c96841e63f9..6e89ef04287 100644
--- a/src/sqlite.c
+++ b/src/sqlite.c
@@ -399,7 +399,7 @@ row_to_value (sqlite3_stmt *stmt)
int len = sqlite3_column_count (stmt);
Lisp_Object values = Qnil;
- for (int i = 0; i < len; ++i)
+ for (int i = len - 1; 0 <= i; i--)
{
Lisp_Object v = Qnil;
@@ -434,7 +434,7 @@ row_to_value (sqlite3_stmt *stmt)
values = Fcons (v, values);
}
- return Fnreverse (values);
+ return values;
}
static Lisp_Object
--- End Message ---
--- Begin Message ---
Subject: |
Re: bug#61165: 30.0.50; Avoid nreverse in row_to_value |
Date: |
Thu, 02 Feb 2023 21:49:35 +0200 |
> From: Helmut Eller <eller.helmut@gmail.com>
> Date: Mon, 30 Jan 2023 08:30:14 +0100
>
> The function row_to_value in the file src/sqlite.c can avoid the call to
> Fnreverse by traversing the row in reverse order. Only a minor
> improvement but the change is simple.
Thanks, installed on the emacs-29 branch
--- End Message ---