From 5fe9672cf6a4e4e6c6bbdb133c9d998f577f88f2 Mon Sep 17 00:00:00 2001 From: Phil Shafer Date: Thu, 7 Nov 2019 18:05:26 +0000 Subject: [PATCH] Import libxo 1.3.1 --- configure.ac | 2 +- libxo/libxo.c | 4 +++- tests/core/test_01.c | 3 +++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/configure.ac b/configure.ac index b042f7e2c28b..62d5a0383f79 100644 --- a/configure.ac +++ b/configure.ac @@ -12,7 +12,7 @@ # AC_PREREQ(2.2) -AC_INIT([libxo], [1.3.0], [phil@juniper.net]) +AC_INIT([libxo], [1.3.1], [phil@juniper.net]) AM_INIT_AUTOMAKE([-Wall -Werror foreign -Wno-portability]) # Support silent build rules. Requires at least automake-1.11. diff --git a/libxo/libxo.c b/libxo/libxo.c index 09d2bd827f93..14268d1b250e 100644 --- a/libxo/libxo.c +++ b/libxo/libxo.c @@ -8104,12 +8104,14 @@ xo_parse_args (int argc, char **argv) cp = strrchr(xo_program, '/'); if (cp) xo_program = ++cp; + else + cp = argv[0]; /* Reset to front of string */ /* GNU tools add an annoying ".test" as the program extension; remove it */ size_t len = strlen(xo_program); static const char gnu_ext[] = ".test"; if (len >= sizeof(gnu_ext)) { - cp = &cp[len + 1 - sizeof(gnu_ext)]; + cp += len + 1 - sizeof(gnu_ext); if (xo_streq(cp, gnu_ext)) *cp = '\0'; } diff --git a/tests/core/test_01.c b/tests/core/test_01.c index 35dc15df6112..aeeb0c9ca67a 100644 --- a/tests/core/test_01.c +++ b/tests/core/test_01.c @@ -50,6 +50,9 @@ main (int argc, char **argv) { "sold", "number", "Number of items sold" }, { XO_INFO_NULL }, }; + + char name[] = "test_01.test"; /* test trimming of xo_program */ + argv[0] = name; argc = xo_parse_args(argc, argv); if (argc < 0)