summaryrefslogtreecommitdiffstats
path: root/lib/libalpm/alpm.h
diff options
context:
space:
mode:
authormorganamilo <morganamilo@gmail.com>2019-11-06 02:42:11 +0100
committerAllan McRae <allan@archlinux.org>2019-11-08 07:32:55 +0100
commit27f354a7874b965bf223832bdf9749504cd1a590 (patch)
treebc3b4c976c71469185d5d7cefd5229888fed8375 /lib/libalpm/alpm.h
parent94982d0061890529cc22401b6763fb5e9ef4e7d1 (diff)
downloadpacman-27f354a7874b965bf223832bdf9749504cd1a590.tar.gz
pacman-27f354a7874b965bf223832bdf9749504cd1a590.tar.xz
pacman+libalpm: handle search errors
Previously, pacman treated no matches and an error during search the same. To fix this, alpm_db_search now returns its status as an int and instead takes the to be returned list as a param. Allowing front ends to easily differentiate between errors and no matches. Signed-off-by: morganamilo <morganamilo@gmail.com> Signed-off-by: Allan McRae <allan@archlinux.org>
Diffstat (limited to 'lib/libalpm/alpm.h')
-rw-r--r--lib/libalpm/alpm.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/libalpm/alpm.h b/lib/libalpm/alpm.h
index 4486da44..d3630385 100644
--- a/lib/libalpm/alpm.h
+++ b/lib/libalpm/alpm.h
@@ -997,9 +997,11 @@ alpm_list_t *alpm_db_get_groupcache(alpm_db_t *db);
/** Searches a database with regular expressions.
* @param db pointer to the package database to search in
* @param needles a list of regular expressions to search for
- * @return the list of packages matching all regular expressions on success, NULL on error
+ * @param ret the list of packages matching all regular expressions
+ * @return 0 on success, -1 on error (pm_errno is set accordingly)
*/
-alpm_list_t *alpm_db_search(alpm_db_t *db, const alpm_list_t *needles);
+int alpm_db_search(alpm_db_t *db, const alpm_list_t *needles,
+ alpm_list_t **ret);
typedef enum _alpm_db_usage_t {
ALPM_DB_USAGE_SYNC = 1,