From 4450737441e20843ab545054d9a2f4accd2242b0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20A=C3=9Fmus?= Date: Tue, 11 Feb 2014 22:14:15 +0100 Subject: [PATCH] PackageInstaller: More cleanup and code simplifications --- .../packageinstaller/InstalledPackageInfo.cpp | 17 ++-- .../packageinstaller/InstalledPackageInfo.h | 79 +++++++++++-------- 2 files changed, 50 insertions(+), 46 deletions(-) diff --git a/src/apps/packageinstaller/InstalledPackageInfo.cpp b/src/apps/packageinstaller/InstalledPackageInfo.cpp index f8f22b3334..c99f63ab40 100644 --- a/src/apps/packageinstaller/InstalledPackageInfo.cpp +++ b/src/apps/packageinstaller/InstalledPackageInfo.cpp @@ -105,9 +105,10 @@ InstalledPackageInfo::InitCheck() status_t InstalledPackageInfo::SetTo(const char *packageName, const char *version, - bool create) + bool create) { _ClearItemList(); + fCreate = create; fStatus = B_NO_INIT; fVersion = version; @@ -179,8 +180,7 @@ InstalledPackageInfo::SetTo(const char *packageName, const char *version, fInstalledItems.AddItem(new BString(itemPath)); // Or maybe BPath better? } fIsUpToDate = true; - } - else if (fStatus == B_ENTRY_NOT_FOUND) { + } else if (fStatus == B_ENTRY_NOT_FOUND) { if (create) { fStatus = B_OK; fIsUpToDate = false; @@ -315,13 +315,8 @@ InstalledPackageInfo::Save() void InstalledPackageInfo::_ClearItemList() { - // Clear the items list - BString *iter; - uint32 i, count = fInstalledItems.CountItems(); - for (i = 0; i < count; i++) { - iter = static_cast(fInstalledItems.ItemAt(0)); - fInstalledItems.RemoveItem((int32)0); - delete iter; - } + for (int32 i = fInstalledItems.CountItems() - 1; i >= 0; i--) + delete static_cast(fInstalledItems.ItemAtFast(i)); + fInstalledItems.MakeEmpty(); } diff --git a/src/apps/packageinstaller/InstalledPackageInfo.h b/src/apps/packageinstaller/InstalledPackageInfo.h index e5c37a43d7..22819c3d1a 100644 --- a/src/apps/packageinstaller/InstalledPackageInfo.h +++ b/src/apps/packageinstaller/InstalledPackageInfo.h @@ -5,8 +5,8 @@ * Author: * Ɓukasz 'Sil2100' Zemczak */ -#ifndef INSTALLEDPACKAGEINFO_H -#define INSTALLEDPACKAGEINFO_H +#ifndef INSTALLED_PACKAGE_INFO_H +#define INSTALLED_PACKAGE_INFO_H #include #include @@ -25,51 +25,60 @@ extern const char * kPackagesDir; // Useful function for fetching the package name and version without parsing all // other data -status_t info_get_package_name(const char *filename, BString &name); -status_t info_get_package_version(const char *filename, BString &name); +status_t info_get_package_name(const char* filename, BString& name); +status_t info_get_package_version(const char* filename, BString& name); class InstalledPackageInfo { - public: - InstalledPackageInfo(); - InstalledPackageInfo(const char *packageName, const char *version = NULL, - bool create = false); - ~InstalledPackageInfo(); +public: + InstalledPackageInfo(); + InstalledPackageInfo(const char* packageName, + const char* version = NULL, + bool create = false); + ~InstalledPackageInfo(); - status_t InitCheck(); - status_t SetTo(const char *packageName, const char *version = NULL, - bool create = false); + status_t InitCheck(); + status_t SetTo(const char* packageName, + const char* version = NULL, + bool create = false); - void SetName(const char *name) { fName = name; } - const char *GetName() { return fName.String(); } - void SetDescription(const char *description) { fDescription = description; } - const char *GetDescription() { return fDescription.String(); } - //void SetVersion(const char *version) { fVersion = version; } - const char *GetVersion() { return fVersion.String(); } - void SetSpaceNeeded(uint64 size) { fSpaceNeeded = size; } - uint64 GetSpaceNeeded() { return fSpaceNeeded; } + void SetName(const char* name) + { fName = name; } + const char* Name() + { return fName.String(); } + void SetDescription(const char* description) + { fDescription = description; } + const char* Description() + { return fDescription.String(); } + const char* Version() + { return fVersion.String(); } + void SetSpaceNeeded(uint64 size) + { fSpaceNeeded = size; } + uint64 SpaceNeeded() + { return fSpaceNeeded; } - status_t AddItem(const char *itemName); + status_t AddItem(const char* itemName); - status_t Uninstall(); - status_t Save(); + status_t Uninstall(); + status_t Save(); - private: - void _ClearItemList(); +private: + void _ClearItemList(); - status_t fStatus; - bool fIsUpToDate; - bool fCreate; +private: + status_t fStatus; + bool fIsUpToDate; + bool fCreate; - BString fName; - BString fDescription; - BString fVersion; - uint64 fSpaceNeeded; - BList fInstalledItems; + BString fName; + BString fDescription; + BString fVersion; + uint64 fSpaceNeeded; + BList fInstalledItems; - BPath fPathToInfo; + BPath fPathToInfo; }; -#endif +#endif // INSTALLED_PACKAGE_INFO_H