[packagekit] Problem with get-groups

Richard Hughes hughsient at gmail.com
Fri Sep 12 02:33:38 PDT 2008


On Fri, 2008-09-12 at 09:09 +0200, Aurelien Lefebvre wrote:
> Hi,
> 
> > Hmm, that commit looks pretty harmless -- it's high-order so if you're
> > not using it it should have no change. Certainly make check passes for
> > me.
> >
> > Can you debug this a little further? For instance, does make check pass?
> >
> > Also, does the daemon report the right group list? If you branch, and
> > revert this commit, does the problem go away? Confused!
> 
> I've solved the problem by commenting "PK_GROUP_ENUM_UNKNOWN" in the
> backend_get_groups function of pk-backend-urpmi.c.
> As soon as I uncomment it, "pkcon get-groups" only returns me "science"
> group.

You're completely right:

	values = pk_bitfield_from_enums (
		PK_GROUP_ENUM_UNKNOWN,
		PK_GROUP_ENUM_REPOS,
		-1);
	egg_error ("returned bitfield %s" pk_group_bitfield_to_text (values));

 - returned bitfield science

I've committed fix in git (72d44b03439338e9ca23486a6fae4840f8ba9b18)
fixing two bugs:

* changing the bitfield size to 64 bits as we now have 33 enums to store
* doing i<=PK_GROUP_ENUM_UNKNOWN rather than i<PK_ROLE_ENUM_UNKNOWN

Bugs are always hard to debug when there's two things broken. I've also
added a load of unit tests too, so these bugs can't happen in the future
when enums are added.

Can you please pull and recompile PackageKit, and verify your backend
works with unknown and your usual groups please.

Thanks dude.

Richard.





More information about the PackageKit mailing list