On Tue, Oct 07, 2003 at 05:24:39PM +0300, Alexander Bokovoy wrote: > On Tue, Oct 07, 2003 at 05:51:08PM +0400, Dmitry V. Levin wrote: > > > > > Точнее, она сейчас действует там по умолчанию -- rpmdepOrder не вызывается > > > > > ни при каких обстоятельствах, в отличие от rpmInstall(). Так что можно > > > > > попробовать код из lib/rpminstall.c:592 аналогичным образом добавить ниже > > > > > по тексту в rpmErase(). > > > > > > > > В cvs head'е rpm'а есть такой код: > > > > > > > > #ifdef NOTYET > > > > if (!stopUninstall && !(ia->installInterfaceFlags & INSTALL_NOORDER)){ > > > > if (rpmtsOrder(ts)) { > > > > numFailed += numPackages; > > > > stopUninstall = 1; > > > > } > > > > } > > > > #endif > > > Похоже на то, но не совсем. Надо будет поэкспериментировать. > > > > Это в точности то. Настораживает "#ifdef NOTYET". > > У нас это выглядело бы так: > > > > #ifdef NOTYET > > if (!stopUninstall && !(interfaceFlags & INSTALL_NOORDER)) { > > if (rpmdepOrder(ts)) { > > numFailed += numPackages; > > stopUninstall = 1; > > } > > } > > #endif > > > Может NOTYET относится к rpmtsOrder - может оно пока не умеет обратную > сортировку для транзакции обеспечивать? Может быть, я не проверял и Jeff'а не спрашивал. -- ldv