From ca5766a511f20e949a4876ab4e4c72775fe04eb0 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Alin=20N=C4=83stac?= Date: Wed, 4 Apr 2007 09:06:12 +0000 Subject: [PATCH] Fix QA issues (#167939) Package-Manager: portage-2.1.2.2 --- net-libs/wvstreams/ChangeLog | 9 +- net-libs/wvstreams/Manifest | 32 +-- ...-wvstreams-4.3 => digest-wvstreams-4.3-r1} | 0 .../files/wvstreams-4.3-type-punned.patch | 197 ++++++++++++++++++ ...ams-4.3.ebuild => wvstreams-4.3-r1.ebuild} | 3 +- 5 files changed, 225 insertions(+), 16 deletions(-) rename net-libs/wvstreams/files/{digest-wvstreams-4.3 => digest-wvstreams-4.3-r1} (100%) create mode 100644 net-libs/wvstreams/files/wvstreams-4.3-type-punned.patch rename net-libs/wvstreams/{wvstreams-4.3.ebuild => wvstreams-4.3-r1.ebuild} (96%) diff --git a/net-libs/wvstreams/ChangeLog b/net-libs/wvstreams/ChangeLog index dcad19c1aae2..2df9591a07ca 100644 --- a/net-libs/wvstreams/ChangeLog +++ b/net-libs/wvstreams/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for net-libs/wvstreams # Copyright 2002-2007 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-libs/wvstreams/ChangeLog,v 1.100 2007/03/14 11:11:19 mrness Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-libs/wvstreams/ChangeLog,v 1.101 2007/04/04 09:06:12 mrness Exp $ + +*wvstreams-4.3-r1 (04 Apr 2007) + + 04 Apr 2007; Alin Năstac + +files/wvstreams-4.3-type-punned.patch, -wvstreams-4.3.ebuild, + +wvstreams-4.3-r1.ebuild: + Fix QA issues (#167939). 14 Mar 2007; Alin Năstac files/wvstreams-4.3-as-needed.patch: diff --git a/net-libs/wvstreams/Manifest b/net-libs/wvstreams/Manifest index cb015c4dded6..e91a67a36941 100644 --- a/net-libs/wvstreams/Manifest +++ b/net-libs/wvstreams/Manifest @@ -61,6 +61,10 @@ AUX wvstreams-4.3-sane-cflags.patch 1566 RMD160 609e48c40707946ef69187f643fa1e2f MD5 a31feb9828c520c7a2df8ba48534e2ab files/wvstreams-4.3-sane-cflags.patch 1566 RMD160 609e48c40707946ef69187f643fa1e2f59584a67 files/wvstreams-4.3-sane-cflags.patch 1566 SHA256 ef649c68e9334f06fa526c07bdf2aab88ee53db89f6917e5972677244db254f7 files/wvstreams-4.3-sane-cflags.patch 1566 +AUX wvstreams-4.3-type-punned.patch 5934 RMD160 a7b4505836d2a5c470516cd0f8ef59d4bf9aadde SHA1 d64d229e092e11b7c0aa0bd72e37d289f2d7feac SHA256 2bce0a22535d502fd555b3735c9457dc8584f609f65ae361f5fd30b1165c6bbf +MD5 7f9d7c258f9089bb0e356ace096629ff files/wvstreams-4.3-type-punned.patch 5934 +RMD160 a7b4505836d2a5c470516cd0f8ef59d4bf9aadde files/wvstreams-4.3-type-punned.patch 5934 +SHA256 2bce0a22535d502fd555b3735c9457dc8584f609f65ae361f5fd30b1165c6bbf files/wvstreams-4.3-type-punned.patch 5934 AUX wvstreams-4.3-uniconfd-ini.patch 796 RMD160 1ded678370f6abb9615b62bebe544566cedb055d SHA1 e97dc392b054370427874c51c70b1c4f764cf880 SHA256 e194c877f2d253eadb7c1784c695f4562675ea7c865ad07e629585180d6bbeee MD5 13f791bb5b4ae8fd7aef57387f4ff7be files/wvstreams-4.3-uniconfd-ini.patch 796 RMD160 1ded678370f6abb9615b62bebe544566cedb055d files/wvstreams-4.3-uniconfd-ini.patch 796 @@ -83,14 +87,14 @@ EBUILD wvstreams-4.2.2.ebuild 2537 RMD160 93309344254038873a0c706117c850e280e01a MD5 bfef0ede67c42cb43776f76d6ec982e3 wvstreams-4.2.2.ebuild 2537 RMD160 93309344254038873a0c706117c850e280e01ab0 wvstreams-4.2.2.ebuild 2537 SHA256 01d7807c175eaa446084241b2e123ed87449a3289c62992686f0e37db77b22c3 wvstreams-4.2.2.ebuild 2537 -EBUILD wvstreams-4.3.ebuild 2428 RMD160 1df38d7e78513f7f9c0c3e31759a30a263305c70 SHA1 714c53f0ce5b75e1013e5e91622710f10e08def9 SHA256 b55462b31f24f96222c42d6375c4a4b5121d95b6762923d758e1f3bcc33b14b0 -MD5 849b876072d6d716c619cbab4fccf7a8 wvstreams-4.3.ebuild 2428 -RMD160 1df38d7e78513f7f9c0c3e31759a30a263305c70 wvstreams-4.3.ebuild 2428 -SHA256 b55462b31f24f96222c42d6375c4a4b5121d95b6762923d758e1f3bcc33b14b0 wvstreams-4.3.ebuild 2428 -MISC ChangeLog 16672 RMD160 bcdfe36f4a06699289e8a2623c08e18ddabaf605 SHA1 2a59453d1d088c25817b975632076ec1a8ec7acc SHA256 f324c0ce34024d32006fdbfafdec7c7a5da02156633f498faffacf0bdae369cc -MD5 ea8e14313c6a3db1a4eae32407a893b3 ChangeLog 16672 -RMD160 bcdfe36f4a06699289e8a2623c08e18ddabaf605 ChangeLog 16672 -SHA256 f324c0ce34024d32006fdbfafdec7c7a5da02156633f498faffacf0bdae369cc ChangeLog 16672 +EBUILD wvstreams-4.3-r1.ebuild 2476 RMD160 25ac128f639ad3931b74c398bee55cc005a0eac1 SHA1 6ce5bb9c6bf3f7fcd615d86a7b07b34bd45931db SHA256 42e8ff62043e8f09c955076394535056bdbb998242db8e09932c446d91d36624 +MD5 0ccc485fde8c07200ff48db271fcb518 wvstreams-4.3-r1.ebuild 2476 +RMD160 25ac128f639ad3931b74c398bee55cc005a0eac1 wvstreams-4.3-r1.ebuild 2476 +SHA256 42e8ff62043e8f09c955076394535056bdbb998242db8e09932c446d91d36624 wvstreams-4.3-r1.ebuild 2476 +MISC ChangeLog 16874 RMD160 d23f07d54b33b8bd7e65e64973ea2551d2e803d9 SHA1 f3454fd8bca037912769f23f97dcb8550a698d87 SHA256 bb5d58b796265c450d6e7de45d31b207cca0a078852300862cdaef15bfc35b39 +MD5 f71180c46d3ab2f019aa1e3c09a5c919 ChangeLog 16874 +RMD160 d23f07d54b33b8bd7e65e64973ea2551d2e803d9 ChangeLog 16874 +SHA256 bb5d58b796265c450d6e7de45d31b207cca0a078852300862cdaef15bfc35b39 ChangeLog 16874 MISC metadata.xml 313 RMD160 e543c31d8ddc948a387dcdcc8638a848c587177b SHA1 a40d5fd17e50dc9f983efc63e5cbb8b407b95c7a SHA256 1ec30d4508abc443f3e9c4829b0e7d7e5c588419344203476818a29f71b98a37 MD5 227de7f678ad662524292836709de75f metadata.xml 313 RMD160 e543c31d8ddc948a387dcdcc8638a848c587177b metadata.xml 313 @@ -104,13 +108,13 @@ SHA256 af8d2d360c3e497dcd8a2f2cc57ec947b2c99a440dff184197b350e60491f451 files/di MD5 ce2f63ffae6742f96ede8200eb39c3d1 files/digest-wvstreams-4.2.2-r3 250 RMD160 ad134621ec5ac0b3b3884506e3abfbf770e34b52 files/digest-wvstreams-4.2.2-r3 250 SHA256 af8d2d360c3e497dcd8a2f2cc57ec947b2c99a440dff184197b350e60491f451 files/digest-wvstreams-4.2.2-r3 250 -MD5 573eed9105c7a3828296d072fbc449eb files/digest-wvstreams-4.3 244 -RMD160 323f0e3ef47ac41b690134fc8b9a73f5ffbbd9ca files/digest-wvstreams-4.3 244 -SHA256 e3bb902f085262bd9e556d98911fdf2940e54befc15a71c88e4eb726df6a1692 files/digest-wvstreams-4.3 244 +MD5 573eed9105c7a3828296d072fbc449eb files/digest-wvstreams-4.3-r1 244 +RMD160 323f0e3ef47ac41b690134fc8b9a73f5ffbbd9ca files/digest-wvstreams-4.3-r1 244 +SHA256 e3bb902f085262bd9e556d98911fdf2940e54befc15a71c88e4eb726df6a1692 files/digest-wvstreams-4.3-r1 244 -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.3 (GNU/Linux) -iD8DBQFF99hjJnxX6mF440QRAhYSAJ90Z1TyYTGzwpYl7xVOgtrBUxArxACfTF1U -tbFBNTvHBItR9ELsWO+KwoI= -=bDGv +iD8DBQFGE2qRJnxX6mF440QRAp4UAJ9O9AKUZaql2v0e29W9NHY0ekNcjQCdFbFj +pe7a+DTzHff65ZwHp9NM1UM= +=Ri6F -----END PGP SIGNATURE----- diff --git a/net-libs/wvstreams/files/digest-wvstreams-4.3 b/net-libs/wvstreams/files/digest-wvstreams-4.3-r1 similarity index 100% rename from net-libs/wvstreams/files/digest-wvstreams-4.3 rename to net-libs/wvstreams/files/digest-wvstreams-4.3-r1 diff --git a/net-libs/wvstreams/files/wvstreams-4.3-type-punned.patch b/net-libs/wvstreams/files/wvstreams-4.3-type-punned.patch new file mode 100644 index 000000000000..e99b413f19f1 --- /dev/null +++ b/net-libs/wvstreams/files/wvstreams-4.3-type-punned.patch @@ -0,0 +1,197 @@ +diff -Nru wvstreams-4.3.orig/urlget/wvhttppool.cc wvstreams-4.3/urlget/wvhttppool.cc +--- wvstreams-4.3.orig/urlget/wvhttppool.cc 2007-02-07 21:05:29.000000000 +0200 ++++ wvstreams-4.3/urlget/wvhttppool.cc 2007-04-04 11:42:06.000000000 +0300 +@@ -43,7 +43,12 @@ + { + WvBufUrlStream *x = new WvBufUrlStream; + outstream = x; +- x->death_notify = (WvStream **)&outstream; ++ union { ++ WvBufUrlStream** ppbufurlstream; ++ WvStream** ppstream; ++ } s; ++ s.ppbufurlstream = &outstream; ++ x->death_notify = s.ppstream; + x->url = url; + + putstream = content_source; +diff -Nru wvstreams-4.3.orig/utils/wvbdbhash.cc wvstreams-4.3/utils/wvbdbhash.cc +--- wvstreams-4.3.orig/utils/wvbdbhash.cc 2007-02-07 21:06:12.000000000 +0200 ++++ wvstreams-4.3/utils/wvbdbhash.cc 2007-04-04 11:37:44.000000000 +0300 +@@ -24,6 +24,11 @@ + + #include "wvlog.h" + ++typedef union { ++ WvBdbHash::datum d; ++ DBT D; ++} DBTdatum; ++ + int comparefunc(const DBT *a, const DBT *b) + { + if (a == NULL && b == NULL) return 0; +@@ -102,14 +107,14 @@ + void WvBdbHash::remove(const datum &key) + { + if (!isok()) return; ++ ++ DBTdatum newkey, data; ++ newkey.d = key; + +- datum newkey, data; +- newkey = key; +- +- int ret = dbf->seq(dbf, (DBT *)&newkey, (DBT *)&data, R_CURSOR); ++ int ret = dbf->seq(dbf, &newkey.D, &data.D, R_CURSOR); + if (!ret) + { +- ret = dbf->del(dbf, (DBT *)&newkey, R_CURSOR); ++ ret = dbf->del(dbf, &newkey.D, R_CURSOR); + } + + if (ret == 1) seterr("Strange: seq found a key that del didn't recognize"); +@@ -119,30 +124,35 @@ + + WvBdbHash::datum WvBdbHash::find(const datum &key) + { +- datum ret = {0, 0}; +- if (!isok()) return ret; ++ DBTdatum newkey, ret; ++ newkey.d = key; ++ ret.d.dptr = 0; ++ ret.d.dsize = 0; ++ if (!isok()) return ret.d; + +- int r = dbf->get(dbf, (DBT *)&key, (DBT *)&ret, 0); ++ int r = dbf->get(dbf, &newkey.D, &ret.D, 0); + if (r == 1) + { + // not found - make sure we return an empty datum +- ret.dptr = NULL; ++ ret.d.dptr = NULL; + } + else if (r != 0) + { +- ret.dptr = NULL; ++ ret.d.dptr = NULL; + seterr(errno); + } +- return ret; ++ return ret.d; + } + + + bool WvBdbHash::exists(const datum &key) + { ++ DBTdatum newkey; ++ newkey.d = key; ++ DBT val; + if (!isok()) return false; + +- datum ret = {0, 0}; +- int r = dbf->get(dbf, (DBT *)&key, (DBT *)&ret, 0); ++ int r = dbf->get(dbf, &newkey.D, &val, 0); + + // return true on success + if (r == 0) return true; +@@ -165,11 +175,11 @@ + } + + // super-slow version +- datum key, value; ++ DBT key, value; + int r; +- while ((r = dbf->seq(dbf, (DBT *)&key, (DBT *)&value, R_FIRST)) == 0) ++ while ((r = dbf->seq(dbf, &key, &value, R_FIRST)) == 0) + { +- int r2 = dbf->del(dbf, (DBT *)&key, R_CURSOR); ++ int r2 = dbf->del(dbf, &key, R_CURSOR); + if (r2 == 1) seterr("Strange: seq found a key that del didn't recognize"); + else if (r2 != 0) seterr(errno); + } +@@ -193,54 +203,60 @@ + { + if (!parent.isok()) return; + ++ DBTdatum unionkey, uniondata; ++ unionkey.d = curkey; ++ uniondata.d = curdata; ++ + // check if this is the first next() after a rewind() +- bool first = !curkey.dptr; +- datum wanted = { 0, 0 }; ++ bool first = !unionkey.d.dptr; ++ DBTdatum wanted; ++ wanted.d.dptr = 0; ++ wanted.d.dsize = 0; + if (first) + { + if (rewindto.dptr) + { +- curkey = rewindto; ++ unionkey.d = rewindto; + first = false; + } + } + else + { +- wanted.dsize = curkey.dsize; +- wanted.dptr = malloc(wanted.dsize); +- memcpy(wanted.dptr, curkey.dptr, wanted.dsize); ++ wanted.d.dsize = unionkey.d.dsize; ++ wanted.d.dptr = malloc(wanted.d.dsize); ++ memcpy(wanted.d.dptr, unionkey.d.dptr, wanted.d.dsize); + } + + // always seek for the saved cursor we were just passed, to work around + // bugs in libdb1's seq with btrees. (As a bonus, this gives us multiple + // iterators for free!) +- int r = parent.dbf->seq(parent.dbf, (DBT *)&curkey, (DBT *)&curdata, ++ int r = parent.dbf->seq(parent.dbf, &unionkey.D, &uniondata.D, + first ? R_FIRST : R_CURSOR); + + if (r == 1) + { + // current key gone, and none higher left: done +- curkey.dptr = curdata.dptr = NULL; ++ unionkey.d.dptr = uniondata.d.dptr = NULL; + } + else if (r != 0) + parent.seterr(errno); + + else if (!first) + { +- while (comparefunc((DBT *)&wanted, (DBT *)&curkey) >= 0) ++ while (comparefunc(&wanted.D, &unionkey.D) >= 0) + { + // found the exact key or earlier than requested: move forward one + // (yes, libbdb1 can return a key less than requested, despite + // the documentation's claims!) + // This algorithm definitely makes it so inserting the same key + // more than once doesn't work at all. +- r = parent.dbf->seq(parent.dbf, (DBT *)&curkey, (DBT *)&curdata, ++ r = parent.dbf->seq(parent.dbf, &unionkey.D, &uniondata.D, + R_NEXT); + + if (r == 1) + { + // nothing left? Fine, we're done +- curkey.dptr = curdata.dptr = NULL; ++ unionkey.d.dptr = uniondata.d.dptr = NULL; + break; + } + else if (r != 0) +@@ -252,8 +268,11 @@ + // the very first key), as expected. (Also, if rewindto is set it should + // be either filled in with the matching btree data or cleared.) Unless, + // of course, the whole db is borked. +- assert(!parent.isok() || !rewindto.dptr || curkey.dptr != rewindto.dptr); +- free(wanted.dptr); ++ assert(!parent.isok() || !rewindto.dptr || unionkey.d.dptr != rewindto.dptr); ++ free(wanted.d.dptr); ++ ++ curkey = unionkey.d; ++ curdata = uniondata.d; + } + + #endif /* WITH_BDB */ diff --git a/net-libs/wvstreams/wvstreams-4.3.ebuild b/net-libs/wvstreams/wvstreams-4.3-r1.ebuild similarity index 96% rename from net-libs/wvstreams/wvstreams-4.3.ebuild rename to net-libs/wvstreams/wvstreams-4.3-r1.ebuild index 9e9203956805..8cca8599dd80 100644 --- a/net-libs/wvstreams/wvstreams-4.3.ebuild +++ b/net-libs/wvstreams/wvstreams-4.3-r1.ebuild @@ -1,6 +1,6 @@ # Copyright 1999-2007 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/net-libs/wvstreams/wvstreams-4.3.ebuild,v 1.1 2007/03/12 15:54:55 mrness Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-libs/wvstreams/wvstreams-4.3-r1.ebuild,v 1.1 2007/04/04 09:06:12 mrness Exp $ WANT_AUTOCONF=2.59 WANT_AUTOMAKE=none @@ -40,6 +40,7 @@ src_unpack() { epatch "${FILESDIR}/${P}-as-needed.patch" epatch "${FILESDIR}/${P}-sane-cflags.patch" epatch "${FILESDIR}/${P}-64bit.patch" + epatch "${FILESDIR}/${P}-type-punned.patch" epatch "${FILESDIR}/${P}-external-xplc.patch" local XPLC_VER=`best_version dev-libs/xplc` -- 2.26.2