Accepting request 492503 from home:bmwiedemann:reproducible:test
Add fixrace.patch to fix random desktop file corruptions (lp#1687644 boo#1021335) OBS-URL: https://build.opensuse.org/request/show/492503 OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/intltool?expand=0&rev=35
This commit is contained in:
parent
cc3cbc5155
commit
52ccf6f393
43
fixrace.patch
Normal file
43
fixrace.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
From: Bernhard M. Wiedemann <bmwiedemann+intltool@suse.de>
|
||||||
|
|
||||||
|
avoid a race where some processes try to use a partial cache file
|
||||||
|
that is still being written to.
|
||||||
|
Note that we release the lock before load_cache,
|
||||||
|
because if we got the lock, the cache is already completely written
|
||||||
|
and it is OK to have multiple parallel readers
|
||||||
|
|
||||||
|
Index: intltool-0.51.0/intltool-merge.in
|
||||||
|
===================================================================
|
||||||
|
--- intltool-0.51.0.orig/intltool-merge.in
|
||||||
|
+++ intltool-0.51.0/intltool-merge.in
|
||||||
|
@@ -43,6 +43,7 @@ use Getopt::Long;
|
||||||
|
use Text::Wrap;
|
||||||
|
use File::Basename;
|
||||||
|
use Encode;
|
||||||
|
+use Fcntl qw(:flock);
|
||||||
|
|
||||||
|
my $must_end_tag = -1;
|
||||||
|
my $last_depth = -1;
|
||||||
|
@@ -392,11 +393,14 @@ sub load_cache
|
||||||
|
|
||||||
|
sub get_cached_translation_database
|
||||||
|
{
|
||||||
|
+ open(my $lockfh, ">", "$cache_file.lock") or die $!;
|
||||||
|
+ flock($lockfh, LOCK_EX) or die "Could not lock '$cache_file.lock' - $!";
|
||||||
|
my $cache_file_age = -M $cache_file;
|
||||||
|
if (defined $cache_file_age)
|
||||||
|
{
|
||||||
|
if ($cache_file_age <= &get_newest_po_age)
|
||||||
|
{
|
||||||
|
+ close($lockfh);
|
||||||
|
&load_cache;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
@@ -404,6 +408,7 @@ sub get_cached_translation_database
|
||||||
|
}
|
||||||
|
|
||||||
|
&create_cache;
|
||||||
|
+ close($lockfh);
|
||||||
|
}
|
||||||
|
|
||||||
|
sub add_translation
|
@ -1,3 +1,9 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Tue May 2 15:22:35 UTC 2017 - bwiedemann@suse.com
|
||||||
|
|
||||||
|
- Add fixrace.patch to fix random desktop file corruptions
|
||||||
|
(lp#1687644 boo#1021335)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Fri Apr 15 22:26:26 UTC 2016 - mgorse@suse.com
|
Fri Apr 15 22:26:26 UTC 2016 - mgorse@suse.com
|
||||||
|
|
||||||
|
@ -32,6 +32,8 @@ Url: https://edge.launchpad.net/intltool/
|
|||||||
Source: https://launchpad.net/%{name}/trunk/%{version}/+download/%{name}-%{version}.tar.gz
|
Source: https://launchpad.net/%{name}/trunk/%{version}/+download/%{name}-%{version}.tar.gz
|
||||||
# PATCH-FIX-UPSTREAM intltool-perl-5.22.patch lp#1490906 dimstar@opensuse.org -- Fix execution with perl 5.22
|
# PATCH-FIX-UPSTREAM intltool-perl-5.22.patch lp#1490906 dimstar@opensuse.org -- Fix execution with perl 5.22
|
||||||
Patch0: intltool-perl-5.22.patch
|
Patch0: intltool-perl-5.22.patch
|
||||||
|
# PATCH-FIX-UPSTREAM fixrace.patch lp#1687644 boo#1021335
|
||||||
|
Patch1: fixrace.patch
|
||||||
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
BuildRoot: %{_tmppath}/%{name}-%{version}-build
|
||||||
|
|
||||||
%description
|
%description
|
||||||
@ -43,6 +45,7 @@ information is written back into the XML files.
|
|||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
%patch0 -p0
|
%patch0 -p0
|
||||||
|
%patch1 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure
|
%configure
|
||||||
|
Loading…
Reference in New Issue
Block a user