index : pacman | |
Archlinux32 fork of pacman | gitolite user |
summaryrefslogtreecommitdiff |
-rw-r--r-- | lib/libalpm/package.c | 8 |
diff --git a/lib/libalpm/package.c b/lib/libalpm/package.c index 31f07325..21984b37 100644 --- a/lib/libalpm/package.c +++ b/lib/libalpm/package.c @@ -126,6 +126,8 @@ static int _pkg_changelog_close(const alpm_pkg_t UNUSED *pkg, return EOF; } +static int _pkg_force_load(alpm_pkg_t UNUSED *pkg) { return 0; } + /** The standard package operations struct. Get fields directly from the * struct itself with no abstraction layer or any type of lazy loading. */ @@ -157,6 +159,8 @@ struct pkg_operations default_pkg_ops = { .changelog_open = _pkg_changelog_open, .changelog_read = _pkg_changelog_read, .changelog_close = _pkg_changelog_close, + + .force_load = _pkg_force_load, }; /* Public functions for getting package information. These functions @@ -437,6 +441,10 @@ alpm_pkg_t *_alpm_pkg_dup(alpm_pkg_t *pkg) alpm_pkg_t *newpkg; alpm_list_t *i; + if(pkg->ops->force_load(pkg)) { + return NULL; + } + CALLOC(newpkg, 1, sizeof(alpm_pkg_t), goto cleanup); newpkg->name_hash = pkg->name_hash; |