[OE-core] [PATCH 1/2] apt-get 0.7.14: hangs at runtime
Khem Raj
raj.khem at gmail.com
Sun Jun 10 07:37:43 UTC 2012
On Wed, Jun 6, 2012 at 11:33 PM, Robert Yang <liezhi.yang at windriver.com> wrote:
> This patch had a little problem, it made a infinite loop:
>
> for (K = CmdL.FileList + 1; *K != 0; J++)
>
thats a typo. change J++ to K++ in above construct
> But the value of "K" will nerver change, so the apt-get hangs, revert
> this patch first, and will fix the problem in another patch.
>
> Note: Increment the PR from 11 to 12
>
> Revert "apt: Fix a latent bug exposed by gcc 4.7"
I dont think you have to revert it.
>
> This reverts commit 9d526462fe97564652771812ad1d363e9962b1e3.
>
> [YOCTO #2488]
>
> Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
> ---
> .../apt/apt-0.7.14/remove-redeclaration.patch | 57 --------------------
> meta/recipes-devtools/apt/apt_0.7.14.bb | 6 +--
> 2 files changed, 2 insertions(+), 61 deletions(-)
> delete mode 100644 meta/recipes-devtools/apt/apt-0.7.14/remove-redeclaration.patch
>
> diff --git a/meta/recipes-devtools/apt/apt-0.7.14/remove-redeclaration.patch b/meta/recipes-devtools/apt/apt-0.7.14/remove-redeclaration.patch
> deleted file mode 100644
> index 68cb0b0..0000000
> --- a/meta/recipes-devtools/apt/apt-0.7.14/remove-redeclaration.patch
> +++ /dev/null
> @@ -1,57 +0,0 @@
> -Fix build errors
> -
> -deb/deblistparser.cc: In member function 'virtual short unsigned int debListParser::VersionHash()':
> -deb/deblistparser.cc:212:13: error: redeclaration of 'char* I'
> -deb/deblistparser.cc:202:22: error: 'const char** I' previously declared here
> -
> -Upstream-Status: Backport
> -Signed-off-by: Khem Raj <raj.khem at gmail.com>
> -Index: apt-0.7.14/apt-pkg/deb/deblistparser.cc
> -===================================================================
> ---- apt-0.7.14.orig/apt-pkg/deb/deblistparser.cc 2012-03-30 11:17:09.112456632 -0700
> -+++ apt-0.7.14/apt-pkg/deb/deblistparser.cc 2012-03-30 11:25:40.484481643 -0700
> -@@ -209,18 +209,18 @@
> - /* Strip out any spaces from the text, this undoes dpkgs reformatting
> - of certain fields. dpkg also has the rather interesting notion of
> - reformatting depends operators < -> <= */
> -- char *I = S;
> -+ char *J = S;
> - for (; Start != End; Start++)
> - {
> - if (isspace(*Start) == 0)
> -- *I++ = tolower(*Start);
> -+ *J++ = tolower(*Start);
> - if (*Start == '<' && Start[1] != '<' && Start[1] != '=')
> -- *I++ = '=';
> -+ *J++ = '=';
> - if (*Start == '>' && Start[1] != '>' && Start[1] != '=')
> -- *I++ = '=';
> -+ *J++ = '=';
> - }
> -
> -- Result = AddCRC16(Result,S,I - S);
> -+ Result = AddCRC16(Result,S,J - S);
> - }
> -
> - return Result;
> -Index: apt-0.7.14/cmdline/apt-get.cc
> -===================================================================
> ---- apt-0.7.14.orig/cmdline/apt-get.cc 2012-03-30 11:28:56.048490824 -0700
> -+++ apt-0.7.14/cmdline/apt-get.cc 2012-03-30 11:32:00.248499740 -0700
> -@@ -1752,12 +1752,12 @@
> - if ((*Cache)[I].Install() == false)
> - continue;
> -
> -- const char **J;
> -- for (J = CmdL.FileList + 1; *J != 0; J++)
> -- if (strcmp(*J,I.Name()) == 0)
> -+ const char **K;
> -+ for (K = CmdL.FileList + 1; *K != 0; J++)
> -+ if (strcmp(*K,I.Name()) == 0)
> - break;
> -
> -- if (*J == 0) {
> -+ if (*K == 0) {
> - List += string(I.Name()) + " ";
> - VersionsList += string(Cache[I].CandVersion) + "\n";
> - }
> diff --git a/meta/recipes-devtools/apt/apt_0.7.14.bb b/meta/recipes-devtools/apt/apt_0.7.14.bb
> index 6354f8e..4055294 100644
> --- a/meta/recipes-devtools/apt/apt_0.7.14.bb
> +++ b/meta/recipes-devtools/apt/apt_0.7.14.bb
> @@ -3,12 +3,10 @@ RDEPENDS_${PN} = "dpkg"
> LIC_FILES_CHKSUM = "file://COPYING.GPL;md5=0636e73ff0215e8d672dc4c32c317bb3"
> require apt.inc
>
> -PR = "r11"
> +PR = "r12"
>
> SRC_URI += "file://nodoc.patch \
> - file://includes-fix.patch \
> - file://remove-redeclaration.patch \
> - "
> + file://includes-fix.patch "
>
> SRC_URI[md5sum] = "19efa18fb1ef20c58b9b44e94258b814"
> SRC_URI[sha256sum] = "8fc06effaf8a4e4333308eedcdc6840f1c8056f2e924210f151dfc076bcd4045"
> --
> 1.7.1
>
>
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core at lists.openembedded.org
> http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core
More information about the Openembedded-core
mailing list