From: Panu Matilainen Date: Tue, 11 Nov 2008 11:53:31 +0000 (+0200) Subject: Push archivePos from rpmfi to fsm X-Git-Tag: tznext/4.11.0.1.tizen20130304~3472 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8e3b5bfc894c5e5b0e3dd41d49fc62db3eaef7aa;p=tools%2Flibrpm-tizen.git Push archivePos from rpmfi to fsm - archive position is only meaningful in fsm context anyway --- diff --git a/lib/fsm.c b/lib/fsm.c index d4cfdef..f7bf0a0 100644 --- a/lib/fsm.c +++ b/lib/fsm.c @@ -525,9 +525,9 @@ int fsmSetup(FSM_t fsm, fileStage goal, if (fsm->goal == FSM_PKGINSTALL || fsm->goal == FSM_PKGBUILD) { void * ptr; - fi->archivePos = 0; + fsm->archivePos = 0; ptr = rpmtsNotify(ts, fi->te, - RPMCALLBACK_INST_START, fi->archivePos, fi->archiveSize); + RPMCALLBACK_INST_START, fsm->archivePos, fi->archiveSize); } fsm->archiveSize = archiveSize; @@ -1734,10 +1734,10 @@ if (!(fsm->mapFlags & CPIO_ALL_HARDLINKS)) break; rpmfi fi = fsmGetFi(fsm); void * ptr; rpm_loff_t archivePos = fdGetCpioPos(fsm->cfd); - if (archivePos > fi->archivePos) { - fi->archivePos = archivePos; + if (archivePos > fsm->archivePos) { + fsm->archivePos = archivePos; ptr = rpmtsNotify(ts, fi->te, RPMCALLBACK_INST_PROGRESS, - fi->archivePos, fi->archiveSize); + fsm->archivePos, fi->archiveSize); } } break; diff --git a/lib/fsm.h b/lib/fsm.h index 89bc750..dcb0238 100644 --- a/lib/fsm.h +++ b/lib/fsm.h @@ -132,6 +132,7 @@ struct fsm_s { hardLink_t links; /*!< Pending hard linked file(s). */ hardLink_t li; /*!< Current hard linked file(s). */ rpm_loff_t * archiveSize; /*!< Pointer to archive size. */ + rpm_loff_t archivePos; /*!< Current archive position. */ char ** failedFile; /*!< First file name that failed. */ const char * subdir; /*!< Current file sub-directory. */ char subbuf[64]; /* XXX eliminate */ diff --git a/lib/rpmfi.c b/lib/rpmfi.c index cb7f089..cb1a093 100644 --- a/lib/rpmfi.c +++ b/lib/rpmfi.c @@ -1230,7 +1230,6 @@ rpmfi rpmfiNew(const rpmts ts, Header h, rpmTag tagN, rpmfiFlags flags) asize = rpmtdGetUint64(&td); } /* 0 means unknown */ - fi->archivePos = 0; fi->archiveSize = asize ? *asize : 0; rpmtdFreeData(&td); diff --git a/lib/rpmfi_internal.h b/lib/rpmfi_internal.h index 1049036..7d1c5c9 100644 --- a/lib/rpmfi_internal.h +++ b/lib/rpmfi_internal.h @@ -99,7 +99,6 @@ struct rpmfi_s { size_t astriplen; size_t striplen; - rpm_loff_t archivePos; rpm_loff_t archiveSize; const char ** apath; cpioMapFlags mapflags;