Author: ivan
Date: Wed May 20 18:29:58 2026
New Revision: 1934443
Log:
Rewrite code to make it less error prone. No functional changes intended.
* subversion/libsvn_subr/sysinfo.c
(svn_sysinfo__linked_libs): Use separate scope for each lib.
Modified:
subversion/trunk/subversion/libsvn_subr/sysinfo.c
Modified: subversion/trunk/subversion/libsvn_subr/sysinfo.c
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/sysinfo.c Wed May 20 17:04:24
2026 (r1934442)
+++ subversion/trunk/subversion/libsvn_subr/sysinfo.c Wed May 20 18:29:58
2026 (r1934443)
@@ -146,56 +146,72 @@ svn_sysinfo__character_encoding(apr_pool
const apr_array_header_t *
svn_sysinfo__linked_libs(apr_pool_t *pool)
{
- svn_version_ext_linked_lib_t *lib;
- apr_array_header_t *array = apr_array_make(pool, 7, sizeof(*lib));
- int lz4_version = svn_lz4__runtime_version();
-
- lib = &APR_ARRAY_PUSH(array, svn_version_ext_linked_lib_t);
- lib->name = "APR";
- lib->compiled_version = APR_VERSION_STRING;
- lib->runtime_version = apr_pstrdup(pool, apr_version_string());
+ apr_array_header_t *array =
+ apr_array_make(pool, 7, sizeof(svn_version_ext_linked_lib_t));
+
+ {
+ svn_version_ext_linked_lib_t *lib = apr_array_push(array);
+ lib->name = "APR";
+ lib->compiled_version = APR_VERSION_STRING;
+ lib->runtime_version = apr_pstrdup(pool, apr_version_string());
+ }
/* Don't list APR-Util if it isn't linked in, which it may not be if
* we're using APR 2.x+ which combined APR-Util into APR. */
#ifdef APU_VERSION_STRING
- lib = &APR_ARRAY_PUSH(array, svn_version_ext_linked_lib_t);
- lib->name = "APR-Util";
- lib->compiled_version = APU_VERSION_STRING;
- lib->runtime_version = apr_pstrdup(pool, apu_version_string());
+ {
+ svn_version_ext_linked_lib_t *lib = apr_array_push(array);
+ lib->name = "APR-Util";
+ lib->compiled_version = APU_VERSION_STRING;
+ lib->runtime_version = apr_pstrdup(pool, apu_version_string());
+ }
#endif
- lib = &APR_ARRAY_PUSH(array, svn_version_ext_linked_lib_t);
- lib->name = "Expat";
- lib->compiled_version = apr_pstrdup(pool, svn_xml__compiled_version());
- lib->runtime_version = apr_pstrdup(pool, svn_xml__runtime_version());
-
- lib = &APR_ARRAY_PUSH(array, svn_version_ext_linked_lib_t);
- lib->name = "SQLite";
- lib->compiled_version = apr_pstrdup(pool, svn_sqlite__compiled_version());
+ {
+ svn_version_ext_linked_lib_t *lib = apr_array_push(array);
+ lib->name = "Expat";
+ lib->compiled_version = apr_pstrdup(pool, svn_xml__compiled_version());
+ lib->runtime_version = apr_pstrdup(pool, svn_xml__runtime_version());
+ }
+
+ {
+ svn_version_ext_linked_lib_t *lib = apr_array_push(array);
+ lib->name = "SQLite";
+ lib->compiled_version = apr_pstrdup(pool, svn_sqlite__compiled_version());
#ifdef SVN_SQLITE_INLINE
- lib->runtime_version = NULL;
+ lib->runtime_version = NULL;
#else
- lib->runtime_version = apr_pstrdup(pool, svn_sqlite__runtime_version());
+ lib->runtime_version = apr_pstrdup(pool, svn_sqlite__runtime_version());
#endif
+ }
- lib = &APR_ARRAY_PUSH(array, svn_version_ext_linked_lib_t);
- lib->name = "Utf8proc";
- lib->compiled_version = apr_pstrdup(pool,
svn_utf__utf8proc_compiled_version());
- lib->runtime_version = apr_pstrdup(pool,
svn_utf__utf8proc_runtime_version());
-
- lib = &APR_ARRAY_PUSH(array, svn_version_ext_linked_lib_t);
- lib->name = "ZLib";
- lib->compiled_version = apr_pstrdup(pool, svn_zlib__compiled_version());
- lib->runtime_version = apr_pstrdup(pool, svn_zlib__runtime_version());
-
- lib = &APR_ARRAY_PUSH(array, svn_version_ext_linked_lib_t);
- lib->name = "LZ4";
- lib->compiled_version = apr_pstrdup(pool, svn_lz4__compiled_version());
-
- lib->runtime_version = apr_psprintf(pool, "%d.%d.%d",
- lz4_version / 100 / 100,
- (lz4_version / 100) % 100,
- lz4_version % 100);
+ {
+ svn_version_ext_linked_lib_t *lib = apr_array_push(array);
+ lib->name = "Utf8proc";
+ lib->compiled_version =
+ apr_pstrdup(pool, svn_utf__utf8proc_compiled_version());
+ lib->runtime_version =
+ apr_pstrdup(pool, svn_utf__utf8proc_runtime_version());
+ }
+
+ {
+ svn_version_ext_linked_lib_t *lib = apr_array_push(array);
+ lib->name = "ZLib";
+ lib->compiled_version = apr_pstrdup(pool, svn_zlib__compiled_version());
+ lib->runtime_version = apr_pstrdup(pool, svn_zlib__runtime_version());
+ }
+
+ {
+ svn_version_ext_linked_lib_t *lib = apr_array_push(array);
+ int lz4_version = svn_lz4__runtime_version();
+ lib->name = "LZ4";
+ lib->compiled_version = apr_pstrdup(pool, svn_lz4__compiled_version());
+
+ lib->runtime_version = apr_psprintf(pool, "%d.%d.%d",
+ lz4_version / 100 / 100,
+ (lz4_version / 100) % 100,
+ lz4_version % 100);
+ }
return array;
}