]> git.pld-linux.org Git - packages/rpm.git/commitdiff
- rel 44; do magic_file() under C locale to avoid 'vasprintf failed' coming from...
authorArkadiusz Miśkiewicz <arekm@maven.pl>
Wed, 6 Oct 2010 18:55:35 +0000 (18:55 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
Changed files:
    rpm-libmagic-locale.patch -> 1.1.2.1
    rpm.spec -> 1.837.2.42.2.49.2.95

rpm-libmagic-locale.patch [new file with mode: 0644]
rpm.spec

diff --git a/rpm-libmagic-locale.patch b/rpm-libmagic-locale.patch
new file mode 100644 (file)
index 0000000..b257407
--- /dev/null
@@ -0,0 +1,22 @@
+--- rpm-4.5/lib/rpmfc.c.org    2010-10-06 20:47:04.748417761 +0200
++++ rpm-4.5/lib/rpmfc.c        2010-10-06 20:48:13.364041124 +0200
+@@ -1356,8 +1356,18 @@
+           /* XXX skip all files in /dev/ which are (or should be) %dev dummies. */
+           else if (slen >= fc->brlen+sizeof("/dev/") && !strncmp(s+fc->brlen, "/dev/", sizeof("/dev/")-1))
+               ftype = "";
+-          else
++          else {
++              char *old_loc = setlocale(LC_CTYPE, NULL);
++              if (old_loc) {
++                      old_loc = xstrdup(old_loc);
++                      setlocale(LC_CTYPE, "C");
++              }
+               ftype = magic_file(ms, s);
++              if (old_loc) {
++                      setlocale(LC_CTYPE, old_loc);
++                      _free(old_loc);
++              }
++          }
+           if (ftype == NULL) {
+               xx = RPMERR_EXEC;
index 2b3e494d4dfcbe731b51e0f4c506efabadfdf767..d5a39c36e3a603356fc61425c931b4904f4b5f86 100644 (file)
--- a/rpm.spec
+++ b/rpm.spec
@@ -57,7 +57,7 @@ Summary(ru.UTF-8):    Менеджер пакетов от RPM
 Summary(uk.UTF-8):     Менеджер пакетів від RPM
 Name:          rpm
 Version:       4.5
-Release:       43
+Release:       44
 License:       LGPL
 Group:         Base
 Source0:       %{name}-%{version}.tar.gz
@@ -102,6 +102,7 @@ Patch12:    %{name}-system_libs.patch
 Patch13:       %{name}-unglobal.patch
 Patch14:       %{name}-etc_dir.patch
 Patch15:       %{name}-system_libs-more.patch
+Patch16:       %{name}-libmagic-locale.patch
 Patch17:       %{name}-ldconfig-always.patch
 Patch18:       %{name}-macros-ac.patch
 Patch19:       %{name}-macros-th.patch
@@ -716,6 +717,7 @@ Dokumentacja API RPM-a oraz przewodniki w formacie HTML generowane ze
 %patch12 -p1
 %patch13 -p1
 %patch14 -p1
+%patch16 -p1
 %patch17 -p1
 sed -e 's/^/@pld@/' %{SOURCE2} >>platform.in
 echo '%%define __perl_provides %%{__perl} /usr/lib/rpm/perl.prov' > macros.perl
This page took 0.0671 seconds and 4 git commands to generate.