|
|
@@ -201,7 +201,10 @@ listpackages(const char *const *argv)
|
|
|
int failures = 0;
|
|
|
struct list_format fmt;
|
|
|
|
|
|
- modstatdb_init(admindir, msdbrw_readonly | msdbrw_available);
|
|
|
+ if (!*argv)
|
|
|
+ modstatdb_init(admindir, msdbrw_readonly);
|
|
|
+ else
|
|
|
+ modstatdb_init(admindir, msdbrw_readonly | msdbrw_available);
|
|
|
|
|
|
pkg_array_init_from_db(&array);
|
|
|
pkg_array_sort(&array, pkg_sorter_by_name);
|
|
|
@@ -368,10 +371,10 @@ enqperpackage(const char *const *argv)
|
|
|
if (!*argv)
|
|
|
badusage(_("--%s needs at least one package name argument"), cipaction->olong);
|
|
|
|
|
|
- if (cipaction->arg_int == act_listfiles)
|
|
|
- modstatdb_init(admindir, msdbrw_readonly);
|
|
|
- else
|
|
|
+ if (cipaction->arg_int == act_printavail)
|
|
|
modstatdb_init(admindir, msdbrw_readonly | msdbrw_available);
|
|
|
+ else
|
|
|
+ modstatdb_init(admindir, msdbrw_readonly);
|
|
|
|
|
|
while ((thisarg = *argv++) != NULL) {
|
|
|
pkg = pkg_db_find(thisarg);
|
|
|
@@ -466,7 +469,10 @@ showpackages(const char *const *argv)
|
|
|
return failures;
|
|
|
}
|
|
|
|
|
|
- modstatdb_init(admindir, msdbrw_readonly | msdbrw_available);
|
|
|
+ if (!*argv)
|
|
|
+ modstatdb_init(admindir, msdbrw_readonly);
|
|
|
+ else
|
|
|
+ modstatdb_init(admindir, msdbrw_readonly | msdbrw_available);
|
|
|
|
|
|
pkg_array_init_from_db(&array);
|
|
|
pkg_array_sort(&array, pkg_sorter_by_name);
|