Sigh ... there are much better fixes for ^C handling than reopening an rpmdb
(where ^C will *still* be disabled while installing).
For starters, the signal handling in RPM was designed to be polled at code
points where the rpmdb is known to be consistent (for a graceful exit with an
rpmdbClose
The more modern interface is iconv(3).
Here is the basic algorithm. The right implementation adds what is known as a
header format extension to convert the encoding of any output displayed by rpm
--query (aka headerSprintf() ...).
hth
I would be happy if commit message was explaining problem... Though code looks
good
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
Conan-Kudo requested changes on this pull request.
Could you please split the unrelated change in this patch into another PR? I
know it's trivial, but let's not have them bundled up for no reason.
> @@ -1103,6 +,12 @@ static void defaultMachine(rpmrcCtx ctx, const char **
> arch, const
ignatenkobrain commented on this pull request.
> @@ -511,13 +511,14 @@ void rpmpsmNotify(rpmpsm psm, int what, rpm_loff_t
> amount)
*/
static void markReplacedInstance(rpmts ts, rpmte te)
{
+/* this must match rpmNameVersionCompare in depends.c */
I think you meant checkProblems() in
ignatenkobrain commented on this pull request.
> rpmdbMatchIterator mi = rpmtsInitIterator(ts, RPMDBI_NAME, rpmteN(te),
> 0);
rpmdbSetIteratorRE(mi, RPMTAG_EPOCH, RPMMIRE_STRCMP, rpmteE(te));
rpmdbSetIteratorRE(mi, RPMTAG_VERSION, RPMMIRE_STRCMP, rpmteV(te));
Conan-Kudo commented on this pull request.
> /* XXX shouldn't we also do this on colorless transactions? */
if (rpmtsColor(ts)) {
- rpmdbSetIteratorRE(mi, RPMTAG_ARCH, RPMMIRE_STRCMP, rpmteA(te));
rpmdbSetIteratorRE(mi, RPMTAG_OS, RPMMIRE_STRCMP, rpmteO(te));
Shouldn't
simotek commented on this pull request.
> @@ -1103,6 +,12 @@ static void defaultMachine(rpmrcCtx ctx, const char **
> arch, const char ** os)
# endif
# endif
+#if defined(__linux__)
+ /* in linux, lets rename parisc to hppa */
+ if (rstreq(un.machine,
mlschroe commented on this pull request.
> @@ -511,13 +511,14 @@ void rpmpsmNotify(rpmpsm psm, int what, rpm_loff_t
> amount)
*/
static void markReplacedInstance(rpmts ts, rpmte te)
{
+/* this must match rpmNameVersionCompare in depends.c */
No, please don't, the comment is correct.
simotek commented on this pull request.
> @@ -511,13 +511,14 @@ void rpmpsmNotify(rpmpsm psm, int what, rpm_loff_t
> amount)
*/
static void markReplacedInstance(rpmts ts, rpmte te)
{
+/* this must match rpmNameVersionCompare in depends.c */
>From reading
mlschroe commented on this pull request.
> @@ -511,13 +511,14 @@ void rpmpsmNotify(rpmpsm psm, int what, rpm_loff_t
> amount)
*/
static void markReplacedInstance(rpmts ts, rpmte te)
{
+/* this must match rpmNameVersionCompare in depends.c */
No, rpm currently does not use the sha sig
Conan-Kudo approved this pull request.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/rpm-software-management/rpm/pull/254#pullrequestreview-49743562___
simotek commented on this pull request.
> @@ -511,13 +511,14 @@ void rpmpsmNotify(rpmpsm psm, int what, rpm_loff_t
> amount)
*/
static void markReplacedInstance(rpmts ts, rpmte te)
{
+/* this must match rpmNameVersionCompare in depends.c */
Thanks, this was quite an old patch, will
It's done so that ^C exists rpm if in read-only mode. I don't know how it
interacts with the db-env, SUSE only uses DB_PRIVATE.
Panu also changed the signal handling quite a bit recently, so it may well be
that the patch is no longer needed.
--
You are receiving this because you are
Ok i'll update the commit message as a starting point, the original patch was
quite different but it doesn't seem like this has been covered in the latest
version.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
simotek commented on this pull request.
> @@ -511,13 +511,14 @@ void rpmpsmNotify(rpmpsm psm, int what, rpm_loff_t
> amount)
*/
static void markReplacedInstance(rpmts ts, rpmte te)
{
+/* this must match rpmNameVersionCompare in depends.c */
Ok, i'll upstream that patch alongside this
16 matches
Mail list logo