summaryrefslogtreecommitdiffstats
path: root/src/Daemon/RPM.cpp
diff options
context:
space:
mode:
authorKarel Klic <kklic@redhat.com>2009-12-14 17:20:03 +0100
committerKarel Klic <kklic@redhat.com>2009-12-14 17:20:03 +0100
commitb6fbdbdee4e4a78528d765bbf4ddb1087adce5f4 (patch)
tree6af427ef59b46a9c452c4f263908f27be9b20ce5 /src/Daemon/RPM.cpp
parenta24d2906c51e3740e6e0acf8f0093827b4e35bc3 (diff)
parentfdce1d751b45bbd0210b45989f4f4c0e092683dc (diff)
downloadabrt-b6fbdbdee4e4a78528d765bbf4ddb1087adce5f4.tar.gz
abrt-b6fbdbdee4e4a78528d765bbf4ddb1087adce5f4.tar.xz
abrt-b6fbdbdee4e4a78528d765bbf4ddb1087adce5f4.zip
Merge branch 'master' of git://git.fedorahosted.org/git/abrt
Diffstat (limited to 'src/Daemon/RPM.cpp')
-rw-r--r--src/Daemon/RPM.cpp25
1 files changed, 8 insertions, 17 deletions
diff --git a/src/Daemon/RPM.cpp b/src/Daemon/RPM.cpp
index b3cf2c1..6f05c0b 100644
--- a/src/Daemon/RPM.cpp
+++ b/src/Daemon/RPM.cpp
@@ -100,16 +100,12 @@ bool CheckHash(const char* pPackage, const char* pPath)
if (strcmp(pPath, rpmfiFN(fi)) == 0)
{
headerHash = rpmfiFDigestHex(fi, &hashAlgo);
+ rpmDoDigest(hashAlgo, pPath, 1, (unsigned char*) computedHash, NULL);
+ ret = (headerHash != "" && headerHash == computedHash);
+ break;
}
}
rpmfiFree(fi);
-
- rpmDoDigest(hashAlgo, pPath, 1, (unsigned char*) computedHash, NULL);
-
- if (headerHash != "" && headerHash == computedHash)
- {
- ret = true;
- }
}
rpmdbFreeIterator(iter);
rpmtsFree(ts);
@@ -118,7 +114,7 @@ bool CheckHash(const char* pPackage, const char* pPath)
std::string GetDescription(const char* pPackage)
{
- std::string pDescription = "";
+ std::string pDescription;
rpmts ts = rpmtsCreate();
rpmdbMatchIterator iter = rpmtsInitIterator(ts, RPMTAG_NAME, pPackage, 0);
Header header = rpmdbNextIterator(iter);
@@ -139,7 +135,7 @@ std::string GetDescription(const char* pPackage)
std::string GetComponent(const char* pFileName)
{
- std::string ret = "";
+ std::string ret;
rpmts ts = rpmtsCreate();
rpmdbMatchIterator iter = rpmtsInitIterator(ts, RPMTAG_BASENAMES, pFileName, 0);
Header header = rpmdbNextIterator(iter);
@@ -161,20 +157,15 @@ std::string GetComponent(const char* pFileName)
return ret;
}
-std::string GetPackage(const char* pFileName)
+char* GetPackage(const char* pFileName)
{
- std::string ret = "";
+ char* ret = NULL;
rpmts ts = rpmtsCreate();
rpmdbMatchIterator iter = rpmtsInitIterator(ts, RPMTAG_BASENAMES, pFileName, 0);
Header header = rpmdbNextIterator(iter);
if (header != NULL)
{
- char* nerv = headerGetNEVR(header, NULL);
- if (nerv != NULL)
- {
- ret = nerv;
- free(nerv);
- }
+ ret = headerGetNEVR(header, NULL);
}
rpmdbFreeIterator(iter);