}
/* XXX: should get ro lock of Packages database! */
- if (stat_database(&state, "Packages", &packagesstat, 1))
+ if (stat_database(&state, &packagesstat))
{
freestate(&state);
return -1;
static int
-stat_database(struct rpmdbstate *state, char *dbname, struct stat *statbuf, int seterror)
+stat_database_name(struct rpmdbstate *state, char *dbname, struct stat *statbuf, int seterror)
{
char *dbpath;
dbpath = solv_dupjoin(state->rootdir, state->is_ostree ? "/usr/share/rpm/" : "/var/lib/rpm/", dbname);
return 0;
}
+static int
+stat_database(struct rpmdbstate *state, struct stat *statbuf)
+{
+ return stat_database_name(state, "Packages", statbuf, 1);
+}
+
+
static inline Id
db2rpmdbid(unsigned char *db, int byteswapped)
{
DBT dbkey;
DBT dbdata;
- if (stat_database(state, "Name", &statbuf, 0))
+ if (stat_database_name(state, "Name", &statbuf, 0))
return 0;
memset(&dbkey, 0, sizeof(dbkey));
memset(&dbdata, 0, sizeof(dbdata));
};
static int
-stat_database(struct rpmdbstate *state, char *dbname, struct stat *statbuf, int seterror)
+stat_database(struct rpmdbstate *state, struct stat *statbuf)
{
char *dbpath;
- dbpath = solv_dupjoin(state->rootdir, state->is_ostree ? "/usr/share/rpm/" : "/var/lib/rpm/", dbname);
+ dbpath = solv_dupjoin(state->rootdir, state->is_ostree ? "/usr/share/rpm/" : "/var/lib/rpm/", "Packages");
if (stat(dbpath, statbuf))
{
- if (seterror)
- pool_error(state->pool, -1, "%s: %s", dbpath, strerror(errno));
+ pool_error(state->pool, -1, "%s: %s", dbpath, strerror(errno));
free(dbpath);
return -1;
}