... |
... |
@@ -128,9 +128,11 @@ sub convert_files { |
128
|
128
|
my $oldmar = getcwd . '/' . $output;
|
129
|
129
|
exit_error "Error extracting $output"
|
130
|
130
|
unless system('mar', '-C', $tmpdir_oldmar, '-x', $oldmar) == 0;
|
|
131
|
+ my $appdir = "$tmpdir/$appname/$appname.app";
|
|
132
|
+ exit_error "Missing directory $appdir" unless -d $appdir;
|
131
|
133
|
my $wanted = sub {
|
132
|
134
|
my $file = $File::Find::name;
|
133
|
|
- $file =~ s{^$tmpdir/$appname\.app/}{};
|
|
135
|
+ $file =~ s{^$appdir/}{};
|
134
|
136
|
if (-f "$tmpdir_oldmar/$file") {
|
135
|
137
|
my (undef, undef, $mode) = stat("$tmpdir_oldmar/$file");
|
136
|
138
|
chmod $mode, $File::Find::name;
|
... |
... |
@@ -139,14 +141,14 @@ sub convert_files { |
139
|
141
|
chmod 0644, $File::Find::name if -f $File::Find::name;
|
140
|
142
|
chmod 0755, $File::Find::name if -d $File::Find::name;
|
141
|
143
|
};
|
142
|
|
- find($wanted, "$tmpdir/$appname.app");
|
|
144
|
+ find($wanted, $appdir);
|
143
|
145
|
|
144
|
146
|
unlink $output;
|
145
|
147
|
local $ENV{MOZ_PRODUCT_VERSION} = $file->{version};
|
146
|
148
|
local $ENV{MAR_CHANNEL_ID} = "torbrowser-torproject-$channel";
|
147
|
149
|
local $ENV{TMPDIR} = $tmpdir;
|
148
|
150
|
(undef, $err, $success) = capture_exec('make_full_update.sh', '-q',
|
149
|
|
- $output, "$tmpdir/$appname.app");
|
|
151
|
+ $output, $appdir);
|
150
|
152
|
exit_error "Error updating $output: $err" unless $success;
|
151
|
153
|
exit_error "make_full_update.sh failed. $output does not exist."
|
152
|
154
|
unless -f $output;
|