コード例 #1
0
static PyObject *
evr_cmp(_PackageObject *self, PyObject *other)
{
    HyPackage pkg2 = packageFromPyObject(other);
    if (pkg2 == NULL)
	return NULL;
    return PyLong_FromLong(hy_package_evr_cmp(self->package, pkg2));
}
コード例 #2
0
ファイル: package.c プロジェクト: iamcourtney/hawkey
int
hy_package_cmp(HyPackage pkg1, HyPackage pkg2)
{
    Pool *pool1 = package_pool(pkg1);
    Pool *pool2 = package_pool(pkg2);
    Solvable *s1 = pool_id2solvable(pool1, pkg1->id);
    Solvable *s2 = pool_id2solvable(pool2, pkg2->id);
    const char *str1 = pool_id2str(pool1, s1->name);
    const char *str2 = pool_id2str(pool2, s2->name);
    int ret = strcmp(str1, str2);
    if (ret)
	return ret;

    ret = hy_package_evr_cmp(pkg1, pkg2);
    if (ret)
	return ret;

    str1 = pool_id2str(pool1, s1->arch);
    str2 = pool_id2str(pool2, s2->arch);
    return strcmp(str1, str2);
}