mirror of
https://github.com/zebrajr/node.git
synced 2026-01-15 12:15:26 +00:00
path: change basename() argument from ext to suffix
Closes: https://github.com/nodejs/node/issues/44773 PR-URL: https://github.com/nodejs/node/pull/44774 Fixes: https://github.com/nodejs/node/issues/44773 Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com> Reviewed-By: Darshan Sen <raisinten@gmail.com> Reviewed-By: Daeyeon Jeong <daeyeon.dev@gmail.com> Reviewed-By: Tobias Nießen <tniessen@tnie.de> Reviewed-By: Trivikram Kamat <trivikr.dev@gmail.com>
This commit is contained in:
32
lib/path.js
32
lib/path.js
@@ -743,12 +743,12 @@ const win32 = {
|
||||
|
||||
/**
|
||||
* @param {string} path
|
||||
* @param {string} [ext]
|
||||
* @param {string} [suffix]
|
||||
* @returns {string}
|
||||
*/
|
||||
basename(path, ext) {
|
||||
if (ext !== undefined)
|
||||
validateString(ext, 'ext');
|
||||
basename(path, suffix) {
|
||||
if (suffix !== undefined)
|
||||
validateString(suffix, 'ext');
|
||||
validateString(path, 'path');
|
||||
let start = 0;
|
||||
let end = -1;
|
||||
@@ -763,10 +763,10 @@ const win32 = {
|
||||
start = 2;
|
||||
}
|
||||
|
||||
if (ext !== undefined && ext.length > 0 && ext.length <= path.length) {
|
||||
if (ext === path)
|
||||
if (suffix !== undefined && suffix.length > 0 && suffix.length <= path.length) {
|
||||
if (suffix === path)
|
||||
return '';
|
||||
let extIdx = ext.length - 1;
|
||||
let extIdx = suffix.length - 1;
|
||||
let firstNonSlashEnd = -1;
|
||||
for (let i = path.length - 1; i >= start; --i) {
|
||||
const code = StringPrototypeCharCodeAt(path, i);
|
||||
@@ -786,7 +786,7 @@ const win32 = {
|
||||
}
|
||||
if (extIdx >= 0) {
|
||||
// Try to match the explicit extension
|
||||
if (code === StringPrototypeCharCodeAt(ext, extIdx)) {
|
||||
if (code === StringPrototypeCharCodeAt(suffix, extIdx)) {
|
||||
if (--extIdx === -1) {
|
||||
// We matched the extension, so mark this as the end of our path
|
||||
// component
|
||||
@@ -1300,22 +1300,22 @@ const posix = {
|
||||
|
||||
/**
|
||||
* @param {string} path
|
||||
* @param {string} [ext]
|
||||
* @param {string} [suffix]
|
||||
* @returns {string}
|
||||
*/
|
||||
basename(path, ext) {
|
||||
if (ext !== undefined)
|
||||
validateString(ext, 'ext');
|
||||
basename(path, suffix) {
|
||||
if (suffix !== undefined)
|
||||
validateString(suffix, 'ext');
|
||||
validateString(path, 'path');
|
||||
|
||||
let start = 0;
|
||||
let end = -1;
|
||||
let matchedSlash = true;
|
||||
|
||||
if (ext !== undefined && ext.length > 0 && ext.length <= path.length) {
|
||||
if (ext === path)
|
||||
if (suffix !== undefined && suffix.length > 0 && suffix.length <= path.length) {
|
||||
if (suffix === path)
|
||||
return '';
|
||||
let extIdx = ext.length - 1;
|
||||
let extIdx = suffix.length - 1;
|
||||
let firstNonSlashEnd = -1;
|
||||
for (let i = path.length - 1; i >= 0; --i) {
|
||||
const code = StringPrototypeCharCodeAt(path, i);
|
||||
@@ -1335,7 +1335,7 @@ const posix = {
|
||||
}
|
||||
if (extIdx >= 0) {
|
||||
// Try to match the explicit extension
|
||||
if (code === StringPrototypeCharCodeAt(ext, extIdx)) {
|
||||
if (code === StringPrototypeCharCodeAt(suffix, extIdx)) {
|
||||
if (--extIdx === -1) {
|
||||
// We matched the extension, so mark this as the end of our path
|
||||
// component
|
||||
|
||||
Reference in New Issue
Block a user