- another debugedit fix from Roland McGrath
- make popt provide popt-devel to further ease split-off transition - skip ESTALE and EACCESS on mountpoints from Jeff Johnson (#190496, #220991)
This commit is contained in:
parent
e910076f01
commit
6d40e7b38d
|
@ -0,0 +1,60 @@
|
|||
From roland@redhat.com Sun Aug 12 15:45:49 2007
|
||||
Date: Sun, 12 Aug 2007 05:45:16 -0700 (PDT)
|
||||
From: Roland McGrath <roland@redhat.com>
|
||||
To: Panu Matilainen <pmatilai@redhat.com>
|
||||
Cc: Paul Nasrat <pnasrat@redhat.com>
|
||||
Subject: Re: debugedit.c goof
|
||||
|
||||
> No need, already applied upstream HEAD, 4.4.x branch and rawhide build
|
||||
> with the fix triggered.
|
||||
|
||||
Too quick! I have another fix. ;-)
|
||||
|
||||
This one is less trivial, and not tested. It should make it put names in
|
||||
the -l file when they match the edit replace directory name as well as the
|
||||
edit match directory name, the point being that it emits the same names
|
||||
when run twice in a row.
|
||||
|
||||
Thanks,
|
||||
Roland
|
||||
|
||||
|
||||
diff -r fb1ee4c438c9 tools/debugedit.c
|
||||
--- a/tools/debugedit.c Sun Aug 12 15:27:46 2007 +0300
|
||||
+++ b/tools/debugedit.c Sun Aug 12 05:42:13 2007 -0700
|
||||
@@ -567,23 +567,22 @@ edit_dwarf2_line (DSO *dso, uint_32 off,
|
||||
memcpy (s + comp_dir_len + 1 + dir_len + 1, file, file_len + 1);
|
||||
}
|
||||
canonicalize_path (s, s);
|
||||
- if (base_dir == NULL ||
|
||||
- has_prefix (s, base_dir))
|
||||
- {
|
||||
- char *p;
|
||||
- size_t size;
|
||||
- ssize_t ret;
|
||||
- if (base_dir)
|
||||
+ if (list_file_fd != -1)
|
||||
+ {
|
||||
+ char *p = NULL;
|
||||
+ if (base_dir == NULL)
|
||||
+ p = s;
|
||||
+ else if (has_prefix (s, base_dir))
|
||||
p = s + strlen (base_dir);
|
||||
- else
|
||||
- p = s;
|
||||
-
|
||||
- if (list_file_fd != -1)
|
||||
+ else if (has_prefix (s, dest_dir))
|
||||
+ p = s + strlen (dest_dir);
|
||||
+
|
||||
+ if (p)
|
||||
{
|
||||
- size = strlen (p) + 1;
|
||||
+ size_t size = strlen (p) + 1;
|
||||
while (size > 0)
|
||||
{
|
||||
- ret = write (list_file_fd, p, size);
|
||||
+ ssize_t ret = write (list_file_fd, p, size);
|
||||
if (ret == -1)
|
||||
break;
|
||||
size -= ret;
|
|
@ -0,0 +1,34 @@
|
|||
changeset: 6253:a5f774e61a47
|
||||
user: Panu Matilainen <pmatilai@redhat.com>
|
||||
date: Thu Aug 09 21:50:56 2007 +0300
|
||||
files: lib/fs.c
|
||||
description:
|
||||
Skip stale and unaccessible (FUSE) mountpoints (rhbz#190496, 220991)
|
||||
Ported from rpm5.org work of Jeff Johnson.
|
||||
|
||||
|
||||
diff -r 0cda3105a3c4 -r a5f774e61a47 lib/fs.c
|
||||
--- a/lib/fs.c Thu Aug 09 19:26:05 2007 +0300
|
||||
+++ b/lib/fs.c Thu Aug 09 21:50:56 2007 +0300
|
||||
@@ -109,11 +109,17 @@ static int getFilesystemList(void)
|
||||
filesystems[i].mntPoint = fsnames[i] = fsn;
|
||||
|
||||
if (stat(filesystems[i].mntPoint, &sb)) {
|
||||
- rpmError(RPMERR_STAT, _("failed to stat %s: %s\n"), fsnames[i],
|
||||
+ switch (errno) {
|
||||
+ case EACCES: /* fuse mount */
|
||||
+ case ESTALE:
|
||||
+ continue;
|
||||
+ default:
|
||||
+ rpmError(RPMERR_STAT, _("failed to stat %s: %s\n"), fsnames[i],
|
||||
strerror(errno));
|
||||
|
||||
- freeFilesystems();
|
||||
- return 1;
|
||||
+ freeFilesystems();
|
||||
+ return 1;
|
||||
+ }
|
||||
}
|
||||
|
||||
filesystems[i].dev = sb.st_dev;
|
||||
|
13
rpm.spec
13
rpm.spec
|
@ -14,7 +14,7 @@ Summary: The RPM package management system
|
|||
Name: rpm
|
||||
Version: 4.4.2.1
|
||||
%{expand: %%define rpm_version %{version}}
|
||||
Release: 6%{?dist}
|
||||
Release: 7%{?dist}
|
||||
Group: System Environment/Base
|
||||
Url: http://www.rpm.org/
|
||||
Source: rpm-%{rpm_version}.tar.gz
|
||||
|
@ -35,6 +35,8 @@ Patch14: rpm-4.4.2.1-rpm-glibc.patch
|
|||
Patch15: rpm-4.4.2.1-config-mtime.patch
|
||||
Patch16: rpm-4.4.2.1-strict-docdir.patch
|
||||
Patch17: rpm-4.4.2.1-buildid-thinko.patch
|
||||
Patch18: rpm-4.4.2.1-estale.patch
|
||||
Patch19: rpm-4.4.2.1-debuginfo-names.patch
|
||||
# XXX Beware, this is one murky license, partially GPL/LGPL dual-licensed
|
||||
# and several different components with their own licenses included...
|
||||
License: (GPLv2 and LGPLv2 with exceptions) and BSD and MIT and Sleepycat
|
||||
|
@ -133,6 +135,7 @@ Summary: A C library for parsing command line parameters
|
|||
Group: Development/Libraries
|
||||
Version: 1.10.2.1
|
||||
License: MIT
|
||||
Provides: popt-devel = %{name}-%{version}
|
||||
|
||||
%description -n popt
|
||||
Popt is a C library for parsing command line parameters. Popt was
|
||||
|
@ -163,6 +166,9 @@ shell-like rules.
|
|||
%patch15 -p1 -b .config-mtime
|
||||
%patch16 -p1 -b .strict-docdir
|
||||
%patch17 -p1 -b .buildid-thinko
|
||||
%patch18 -p1 -b .estale
|
||||
%patch19 -p1 -b .debugedit-names
|
||||
|
||||
cp -f %{SOURCE2} scripts/find-debuginfo.sh
|
||||
|
||||
%build
|
||||
|
@ -467,6 +473,11 @@ exit 0
|
|||
%{__includedir}/popt.h
|
||||
|
||||
%changelog
|
||||
* Mon Aug 13 2007 Panu Matilainen <pmatilai@redhat.com> - 4.4.2.1-7
|
||||
- another debugedit fix from Roland McGrath
|
||||
- make popt provide popt-devel to further ease split-off transition
|
||||
- skip ESTALE and EACCESS on mountpoints from Jeff Johnson (#190496, #220991)
|
||||
|
||||
* Sun Aug 12 2007 Panu Matilainen <pmatilai@redhat.com> - 4.4.2.1-6
|
||||
- debugedit buildid thinko fix from Roland McGrath
|
||||
- loosen up popt-dependency to prepare for splitting it off
|
||||
|
|
Loading…
Reference in New Issue