struct pakfire_linter;
int pakfire_linter_create(struct pakfire_linter** linter,
- struct pakfire_ctx* ctx, struct pakfire_archive* archive);
+ struct pakfire* pakfire, struct pakfire_archive* archive);
struct pakfire_linter* pakfire_linter_ref(struct pakfire_linter* linter);
struct pakfire_linter* pakfire_linter_unref(struct pakfire_linter* linter);
#include <pakfire/linter.h>
#include <pakfire/logging.h>
#include <pakfire/package.h>
+#include <pakfire/pakfire.h>
#include <pakfire/string.h>
struct pakfire_linter_result {
struct pakfire_ctx* ctx;
int nrefs;
+ // Pakfire
+ struct pakfire* pakfire;
+
// Archive
struct pakfire_archive* archive;
pakfire_linter_result(linter, PAKFIRE_LINTER_ERROR, format, ## __VA_ARGS__)
int pakfire_linter_create(struct pakfire_linter** linter,
- struct pakfire_ctx* ctx, struct pakfire_archive* archive) {
+ struct pakfire* pakfire, struct pakfire_archive* archive) {
struct pakfire_linter* l = NULL;
int r;
return -errno;
// Reference the context
- l->ctx = pakfire_ctx_ref(ctx);
+ l->ctx = pakfire_ctx(pakfire);
+
+ // Reference Pakfire
+ l->pakfire = pakfire_ref(pakfire);
// Initialize reference counter
l->nrefs = 1;
pakfire_archive_unref(linter->archive);
if (linter->pkg)
pakfire_package_unref(linter->pkg);
+ if (linter->pakfire)
+ pakfire_unref(linter->pakfire);
if (linter->ctx)
pakfire_ctx_unref(linter->ctx);
free(linter);