summaryrefslogtreecommitdiff
path: root/build
diff options
context:
space:
mode:
authorjbj <devnull@localhost>1999-06-02 14:45:46 +0000
committerjbj <devnull@localhost>1999-06-02 14:45:46 +0000
commitcde2b85a9d8dd04897b8e73aa456bd0c33fad93e (patch)
tree6ac4dc7f2ba6ae448212ca6dcaf6a73aad86ffa9 /build
parent3e2edc54224f6d36e3127816b53fd641785337a4 (diff)
downloadrpm-cde2b85a9d8dd04897b8e73aa456bd0c33fad93e.tar.gz
rpm-cde2b85a9d8dd04897b8e73aa456bd0c33fad93e.tar.bz2
rpm-cde2b85a9d8dd04897b8e73aa456bd0c33fad93e.zip
fix: bigendian's with longlong file sizes (e.g. IRIX) dinna work.
CVS patchset: 3080 CVS date: 1999/06/02 14:45:46
Diffstat (limited to 'build')
-rw-r--r--build/files.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/build/files.c b/build/files.c
index e942db76f..bf934b566 100644
--- a/build/files.c
+++ b/build/files.c
@@ -803,8 +803,15 @@ static void genCpioListAndHeader(struct FileList *fl,
/* Make the header */
headerAddOrAppendEntry(h, RPMTAG_FILENAMES, RPM_STRING_ARRAY_TYPE,
&(flp->fileName), 1);
+
+ if (sizeof(flp->fl_size) != sizeof(uint_32)) {
+ uint_32 psize = (uint_32)flp->fl_size;
+ headerAddOrAppendEntry(h, RPMTAG_FILESIZES, RPM_INT32_TYPE,
+ &(psize), 1);
+ } else {
headerAddOrAppendEntry(h, RPMTAG_FILESIZES, RPM_INT32_TYPE,
&(flp->fl_size), 1);
+ }
headerAddOrAppendEntry(h, RPMTAG_FILEUSERNAME, RPM_STRING_ARRAY_TYPE,
&(flp->uname), 1);
headerAddOrAppendEntry(h, RPMTAG_FILEGROUPNAME, RPM_STRING_ARRAY_TYPE,