Here's a variant that's a blend of all the above options we've discussed. This 
one makes use of `RPMTRANS_FLAG_NOPLUGINS` (i.e. same as `--noplugins`) to turn 
off the hooks during src.rpm unpacking.

This way, we don't need to pass around a `te` argument to every hook function 
(this would, annoyingly, also impact a couple of the static fsm functions).

It's also cleaner than swapping out the plugin list with an empty one 
temporarily (this would have to be done from within 
`rpmInstallSourcePackage()`, i.e. once per every src.rpm, since `plugins->ts` 
may only be initialized for the first time in that function).

Lastly, as it often happens, one discovers tasty bugs while looking in dusty 
corners, which is exactly what happened here: It turns out the combination of 
binary and source packages (e.g. `rpm -i foo.rpm bar.src.rpm`) never really 
worked, due to a missed `rpmtsEmpty()` call, so that's also fixed in this PR 
:smile: 

-- 
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/3470#issuecomment-2529058737
You are receiving this because you are subscribed to this thread.

Message ID: <rpm-software-management/rpm/pull/3470/c2529058...@github.com>
_______________________________________________
Rpm-maint mailing list
Rpm-maint@lists.rpm.org
https://lists.rpm.org/mailman/listinfo/rpm-maint

Reply via email to