Skip to content

Commit bc19fee

Browse files
committed
Added extra parameter to extractEntryTo so target filename can be renamed
1 parent 92e9836 commit bc19fee

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

adm-zip.js

+6-2
Original file line numberDiff line numberDiff line change
@@ -456,10 +456,11 @@ module.exports = function (/**String*/input) {
456456
* will be created in targetPath as well. Default is TRUE
457457
* @param overwrite If the file already exists at the target path, the file will be overwriten if this is true.
458458
* Default is FALSE
459+
* @param outFileName String If set will override the filename of the extracted file (Only works if the entry is a file)
459460
*
460461
* @return Boolean
461462
*/
462-
extractEntryTo: function (/**Object*/entry, /**String*/targetPath, /**Boolean*/maintainEntryPath, /**Boolean*/overwrite) {
463+
extractEntryTo: function (/**Object*/entry, /**String*/targetPath, /**Boolean*/maintainEntryPath, /**Boolean*/overwrite, /**String**/outFileName) {
463464
overwrite = overwrite || false;
464465
maintainEntryPath = typeof maintainEntryPath === "undefined" ? true : maintainEntryPath;
465466

@@ -470,7 +471,10 @@ module.exports = function (/**String*/input) {
470471

471472
var entryName = item.entryName;
472473

473-
var target = sanitize(targetPath, maintainEntryPath ? entryName : pth.basename(entryName));
474+
var target = sanitize(targetPath,
475+
outFileName !== "" && !item.isDirectory ? outFileName :
476+
(maintainEntryPath ? entryName : pth.basename(entryName))
477+
);
474478

475479
if (item.isDirectory) {
476480
target = pth.resolve(target, "..");

0 commit comments

Comments
 (0)