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 <[email protected]>
---
 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));
-- 
2.33.0

Reply via email to