From e7d57dd1e5ba5a38cc9df28fd00172db06cef4e2 Mon Sep 17 00:00:00 2001 From: Andrew Plotkin Date: Sun, 9 May 2021 00:14:36 -0400 Subject: [PATCH] fix: /usr/bin/file can return errors on MacOS; ignore these errors (#13) Co-authored-by: Andrew Plotkin --- src/file-utils.ts | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/file-utils.ts b/src/file-utils.ts index 6b37ad8..12376e2 100644 --- a/src/file-utils.ts +++ b/src/file-utils.ts @@ -1,4 +1,4 @@ -import { spawn } from '@malept/cross-spawn-promise'; +import { spawn, ExitCodeError } from '@malept/cross-spawn-promise'; import * as fs from 'fs-extra'; import * as path from 'path'; @@ -34,7 +34,16 @@ export const getAllAppFiles = async (appPath: string): Promise => { if (info.isFile()) { let fileType = AppFileType.PLAIN; - const fileOutput = await spawn('file', ['--brief', '--no-pad', p]); + var fileOutput = ''; + try { + fileOutput = await spawn('file', ['--brief', '--no-pad', p]); + } catch (e) { + if (e instanceof ExitCodeError) { + /* silently accept error codes from "file" */ + } else { + throw e; + } + } if (p.includes('app.asar')) { fileType = AppFileType.APP_CODE; } else if (fileOutput.startsWith(MACHO_PREFIX)) {