Skip to content

Commit 5f1f44c

Browse files
authored
Merge pull request #1039 from jonjohnsonjr/no-temp-sign-index
Don't write APK to temp file during signing
2 parents e957ab1 + afaebbc commit 5f1f44c

1 file changed

Lines changed: 6 additions & 22 deletions

File tree

pkg/cli/sign.go

Lines changed: 6 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -214,6 +214,7 @@ func (o signOpts) run(ctx context.Context, pkg string) error {
214214
if err != nil {
215215
return err
216216
}
217+
defer cf.Close()
217218

218219
// Use the control sections ModTime (set to SDE) for the signature
219220
cfinfo, err := os.Stat(eapk.ControlFile)
@@ -242,26 +243,7 @@ func (o signOpts) run(ctx context.Context, pkg string) error {
242243
if err != nil {
243244
return err
244245
}
245-
246-
tf, err := os.CreateTemp("", "melange-signer")
247-
if err != nil {
248-
return err
249-
}
250-
defer os.RemoveAll(tf.Name())
251-
252-
for _, fp := range []io.Reader{bytes.NewBuffer(sigData), cf, df} {
253-
if _, err := io.Copy(tf, fp); err != nil {
254-
return err
255-
}
256-
}
257-
258-
if err := tf.Sync(); err != nil {
259-
return err
260-
}
261-
262-
if _, err := tf.Seek(0, io.SeekStart); err != nil {
263-
return err
264-
}
246+
defer df.Close()
265247

266248
// Replace the package file with the new one
267249
f, err := os.Create(pkg)
@@ -270,8 +252,10 @@ func (o signOpts) run(ctx context.Context, pkg string) error {
270252
}
271253
defer f.Close()
272254

273-
if _, err := io.Copy(f, tf); err != nil {
274-
return err
255+
for _, fp := range []io.Reader{bytes.NewBuffer(sigData), cf, df} {
256+
if _, err := io.Copy(f, fp); err != nil {
257+
return err
258+
}
275259
}
276260

277261
return nil

0 commit comments

Comments
 (0)