diff --git a/src/add-ons/kernel/file_systems/packagefs/Dependency.cpp b/src/add-ons/kernel/file_systems/packagefs/Dependency.cpp index cec8991d96..a08ea6dd4c 100644 --- a/src/add-ons/kernel/file_systems/packagefs/Dependency.cpp +++ b/src/add-ons/kernel/file_systems/packagefs/Dependency.cpp @@ -49,3 +49,14 @@ Dependency::SetVersionRequirement(BPackageResolvableOperator op, fVersionOperator = op; fVersion = version; } + + +bool +Dependency::ResolvableVersionMatches(Version* resolvableVersion) const +{ + if (fVersion == NULL) + return true; + + return resolvableVersion != NULL + && fVersion->Compare(fVersionOperator, *resolvableVersion); +} diff --git a/src/add-ons/kernel/file_systems/packagefs/Dependency.h b/src/add-ons/kernel/file_systems/packagefs/Dependency.h index 9e06d29556..0da11cc3d1 100644 --- a/src/add-ons/kernel/file_systems/packagefs/Dependency.h +++ b/src/add-ons/kernel/file_systems/packagefs/Dependency.h @@ -47,6 +47,8 @@ public: { fResolvable = resolvable; } ::Resolvable* Resolvable() const { return fResolvable; } + bool ResolvableVersionMatches( + Version* resolvableVersion) const; const char* Name() const { return fName; }