From 23005b8929e92d379b12fc074c3c378b1efbecf4 Mon Sep 17 00:00:00 2001 From: tv Date: Tue, 12 Jun 2012 17:37:21 +0000 Subject: (get_name, get_arch) introduce a couple helper from URPM (needed for next commits) git-svn-id: svn+ssh://haiku.zarb.org/home/projects/rpm4/svn/trunk@187 971eb68f-4bfb-0310-8326-d2484c010a4c --- RPM4/src/RPM4.xs | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/RPM4/src/RPM4.xs b/RPM4/src/RPM4.xs index 2a17ad0..ac6c556 100644 --- a/RPM4/src/RPM4.xs +++ b/RPM4/src/RPM4.xs @@ -181,6 +181,30 @@ static rpmTag sv2dbquerytag(SV * sv_tag) { #define sv2tagtype(sv) sv2constant((sv), "rpmtagtype") +/* + * From URPM.xs: + */ + +static char * +get_name(Header header, int32_t tag) { + struct rpmtd_s val; + + headerGet(header, tag, &val, HEADERGET_MINMEM); + char *name = (char *) rpmtdGetString(&val); + rpmtdFreeData(&val); + return name ? name : ""; +} + +static char* +get_arch(Header header) { + return headerIsEntry(header, RPMTAG_SOURCERPM) ? get_name(header, RPMTAG_ARCH) : "src"; +} + +/* + * End of URPM import + * */ + + /* This function replace the standard rpmShowProgress callback * during transaction to allow perl callback */ -- cgit v1.2.1