From Bugzilla Helper: User-Agent: Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.2.1) Gecko/20021130 Description of problem: On HP-UX (possibly others), relocation doesn't work. There's a place in rpmfiNew that tests if ts is null and if fi is null before checking to see the transaction element type: if(ts != NULL) if(fi != NULL) if(fi->te != NULL && rpmteType(fi->te) == TR_ADDED) { ... The problem is that the transactional element part of fi isn't initialized in the code leading up to this. The patch included adds these lines after the fi != NULL test: fi->te = rpmtsElement(ts, 0); if ( fi->h != NULL ) { fi->te->h = headerLink(fi->h); } I'm not sure if I needed to provide the header link, but that was the way it was done in psm.c. Version-Release number of selected component (if applicable): rpm-4.1 How reproducible: Always Steps to Reproduce: Steps to Reproduce: 1. Extract source from tar file 2. Apply patches from bugs 97662, 97887, 97907, 101717 113340 113348 3. ./configure --prefix=/usr/local --without-python (I don't think the options matter, thought) 4. make 5. make install 6. rpm -ivvvh --prefix /tmp/relocate <somerelocatablerpm> Actual Results: See attachment Expected Results: See attachment Additional info:
Created attachment 96910 [details] Relocation error results
Created attachment 96911 [details] Relocation was done successfully
Created attachment 96912 [details] patch to fix relocation problem
relocation doesn't work everywhere, not just hpux, in several recent versions of rpm. Problem has been fixed in rpm-4.2.1, possibly in rpm-4.2-1 final, I fergit. Could you try that fix please?
Closing due to inactivity. If this issue still occurs with current releases, please reopen and set the release in which you've encountered the problem.