@@ -28409,9 +28409,13 @@ function getPlatform() {
2840928409  }
2841028410}
2841128411
28412+ function getZipName(osPlatform) {
28413+   return `BinDiff-${osPlatform}`;
28414+ }
28415+ 
2841228416function getUrl(version, osPlatform) {
2841328417  const versionPart = version === 'latest' ? 'latest/download' : `download/${version}`;
28414-   return `${BASE_URL}/releases/${versionPart}/BinDiff-${ osPlatform}.zip`;
28418+   return `${BASE_URL}/releases/${versionPart}/${getZipName( osPlatform) }.zip`;
2841528419}
2841628420
2841728421function exeName(name) {
@@ -28495,6 +28499,8 @@ async function download() {
2849528499  const extractPath = await tc.extractZip(downloadPath);
2849628500  core.debug(`extractPath: ${extractPath}`);
2849728501
28502+   const bindiffPath = path.join(extractPath, getZipName(osPlatform));
28503+ 
2849828504  if (!process.env.RUNNER_TEMP)
2849928505    throw new Error('Environment variable RUNNER_TEMP is not set');
2850028506
@@ -28504,18 +28510,18 @@ async function download() {
2850428510  core.info(`Installing to ${outputPath}`);
2850528511  const binDir = path.join(outputPath, 'bin');
2850628512  await io.mkdirP(binDir);
28507-   await io.mv(path.join(extractPath , exeName('bindiff')), binDir);
28508-   await io.mv(path.join(extractPath , 'tools', exeName('bindiff_config_setup')), binDir);
28509-   await io.mv(path.join(extractPath , 'tools', exeName('binexport2dump')), binDir);
28513+   await io.mv(path.join(bindiffPath , exeName('bindiff')), binDir);
28514+   await io.mv(path.join(bindiffPath , 'tools', exeName('bindiff_config_setup')), binDir);
28515+   await io.mv(path.join(bindiffPath , 'tools', exeName('binexport2dump')), binDir);
2851028516
2851128517  const idaPluginDir = getPluginsDir(outputPath, 'IDA Pro');
2851228518  await io.mkdirP(idaPluginDir);
28513-   await io.mv(path.join(extractPath , 'ida', dllName('binexport12_ida')), idaPluginDir);
28514-   await io.mv(path.join(extractPath , 'ida', dllName('bindiff8_ida')), idaPluginDir);
28519+   await io.mv(path.join(bindiffPath , 'ida', dllName('binexport12_ida')), idaPluginDir);
28520+   await io.mv(path.join(bindiffPath , 'ida', dllName('bindiff8_ida')), idaPluginDir);
2851528521
2851628522  const binjaPluginDir = getPluginsDir(outputPath, 'Binary Ninja');
2851728523  await io.mkdirP(binjaPluginDir);
28518-   await io.mv(path.join(extractPath , 'binaryninja', dllName('binexport12_binaryninja')), binjaPluginDir);
28524+   await io.mv(path.join(bindiffPath , 'binaryninja', dllName('binexport12_binaryninja')), binjaPluginDir);
2851928525
2852028526  // mark as executable on linux
2852128527  if (osPlatform === 'linux') {
0 commit comments