summaryrefslogtreecommitdiffstats
path: root/src/Daemon/RPM.cpp
diff options
context:
space:
mode:
authorDenys Vlasenko <vda.linux@googlemail.com>2009-12-14 16:52:38 +0100
committerDenys Vlasenko <vda.linux@googlemail.com>2009-12-14 16:52:38 +0100
commitfdce1d751b45bbd0210b45989f4f4c0e092683dc (patch)
tree81d1dd901eece504a10d05e743eeb43d5eaec04c /src/Daemon/RPM.cpp
parenta238ed9f6c80054028c6ba48a5fe773f8150c7c6 (diff)
downloadabrt-fdce1d751b45bbd0210b45989f4f4c0e092683dc.tar.gz
abrt-fdce1d751b45bbd0210b45989f4f4c0e092683dc.tar.xz
abrt-fdce1d751b45bbd0210b45989f4f4c0e092683dc.zip
better logging of package and hash checks
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
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);