Message ID | 20210926135758.1118642-1-arch@skold.dev |
---|---|
State | Superseded, archived |
Headers | show |
Series | [v2] Print the package arch using the %a format specifier. | expand |
On 26/09/2021 14:57, Jonathan Sköld wrote: > Was pointed out in the IRC channel that package arch may be NULL. Revised the > patch to include a NULL check before trying to replace string. > > Signed-off-by: Jonathan Sköld <arch@skold.dev> > --- > src/pacman/util.c | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/src/pacman/util.c b/src/pacman/util.c > index 5486e7a5..70df6128 100644 > --- a/src/pacman/util.c > +++ b/src/pacman/util.c > @@ -1146,6 +1146,16 @@ void print_packages(const alpm_list_t *packages) > alpm_pkg_t *pkg = i->data; > char *string = strdup(config->print_format); > char *temp = string; > + /* %a : pkgarch */ > + if(strstr(temp, "%a")) { > + const char *arch = alpm_pkg_get_arch(pkg); > + if(arch == NULL) { > + arch = ""; > + } > + string = strreplace(temp, "%a", arch); > + free(temp); > + temp = string; > + } > /* %n : pkgname */ > if(strstr(temp, "%n")) { > string = strreplace(temp, "%n", alpm_pkg_get_name(pkg)); > Looks good to me. Though in future the bit about irc should be a comment instead of inside the commit message. You can write --- in the commit message and everything below it will be a comment when sent as a patch.
On 27/09/2021 21:35, Morgan Adamiec wrote: > > > On 26/09/2021 14:57, Jonathan Sköld wrote: >> Was pointed out in the IRC channel that package arch may be NULL. Revised the >> patch to include a NULL check before trying to replace string. >> >> Signed-off-by: Jonathan Sköld <arch@skold.dev> >> --- >> src/pacman/util.c | 10 ++++++++++ >> 1 file changed, 10 insertions(+) >> >> diff --git a/src/pacman/util.c b/src/pacman/util.c >> index 5486e7a5..70df6128 100644 >> --- a/src/pacman/util.c >> +++ b/src/pacman/util.c >> @@ -1146,6 +1146,16 @@ void print_packages(const alpm_list_t *packages) >> alpm_pkg_t *pkg = i->data; >> char *string = strdup(config->print_format); >> char *temp = string; >> + /* %a : pkgarch */ >> + if(strstr(temp, "%a")) { >> + const char *arch = alpm_pkg_get_arch(pkg); >> + if(arch == NULL) { >> + arch = ""; >> + } >> + string = strreplace(temp, "%a", arch); >> + free(temp); >> + temp = string; >> + } >> /* %n : pkgname */ >> if(strstr(temp, "%n")) { >> string = strreplace(temp, "%n", alpm_pkg_get_name(pkg)); >> > > Looks good to me. Though in future the bit about irc should be a comment > instead of inside the commit message. > > You can write --- in the commit message and everything below it will be > a comment when sent as a patch. > Also forgot to mention, the man page needs to also mention %a
diff --git a/src/pacman/util.c b/src/pacman/util.c index 5486e7a5..70df6128 100644 --- a/src/pacman/util.c +++ b/src/pacman/util.c @@ -1146,6 +1146,16 @@ void print_packages(const alpm_list_t *packages) alpm_pkg_t *pkg = i->data; char *string = strdup(config->print_format); char *temp = string; + /* %a : pkgarch */ + if(strstr(temp, "%a")) { + const char *arch = alpm_pkg_get_arch(pkg); + if(arch == NULL) { + arch = ""; + } + string = strreplace(temp, "%a", arch); + free(temp); + temp = string; + } /* %n : pkgname */ if(strstr(temp, "%n")) { string = strreplace(temp, "%n", alpm_pkg_get_name(pkg));
Was pointed out in the IRC channel that package arch may be NULL. Revised the patch to include a NULL check before trying to replace string. Signed-off-by: Jonathan Sköld <arch@skold.dev> --- src/pacman/util.c | 10 ++++++++++ 1 file changed, 10 insertions(+)