[pacman-dev] Problem with alpm_pkg_changelog_open

Dan McGee dpmcgee at gmail.com
Fri Apr 1 15:15:32 EDT 2011

On Fri, Apr 1, 2011 at 2:10 PM, kachelaqa <kachelaqa at gmail.com> wrote:
> On 01/04/11 20:00, Dan McGee wrote:
>> On Fri, Apr 1, 2011 at 1:56 PM, kachelaqa<kachelaqa at gmail.com>  wrote:
>>> On 01/04/11 19:44, Dan McGee wrote:
>>>> It is definitely a bug in the sense that it segfaults- we provide no
>>>> changelog_* functions in the sync (or default) pkg_operations
>>>> callback.
>>> pardon my ignorance, but what is _package_changelog_open in be_package.c
>>> for?
>> pacman -Qpc<package file>
>> Not sync *database packages*, but *package files*.
>> be_local: /var/lib/pacman/local
>> be_sync: /var/lib/pacman/sync/*.db
>> be_package: package files
> ah, yes of course - thanks
>>>> Where have you actually seen changelogs in sync databases?
>>> well, it's difficult for me to check for specific changelogs at the
>>> moment.
>>> are you saying that they are not stored in sync databases at all? even if
>>> there is one in the local database (e.g. scite)?
>> Nope.
>> $ bsdtar tf /var/lib/pacman/sync/community.db | grep scite
>> scite-2.24-1/
>> scite-2.24-1/desc
>> scite-2.24-1/depends
> okay, so changelogs are only ever stored in the local database. so all i
> have to do is check whether a package is installed before attempting to
> retrieve a changelog.

Well you will be looking at very different pmpkg_t objects as well-
one loaded from a sync database vs. one loaded from a local database.

Either way, I'll fix it so it doesn't segfault and just returns NULL
when calling changelog_open on a sync database package.


More information about the pacman-dev mailing list