From fc21a768336b5583212a56fb5e83e53c23f45e66 Mon Sep 17 00:00:00 2001 From: Rhys Arkins <rhys@arkins.net> Date: Tue, 11 Aug 2020 08:08:16 +0200 Subject: [PATCH] fix: harden startsWith checks --- lib/config/migration.ts | 2 +- lib/versioning/ruby/strategies/replace.ts | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lib/config/migration.ts b/lib/config/migration.ts index 9949fe1428..9d04042862 100644 --- a/lib/config/migration.ts +++ b/lib/config/migration.ts @@ -219,7 +219,7 @@ export function migrateConfig( } else if (val[i] === ':library' || val[i] === 'config:library') { isMigrated = true; migratedConfig.extends[i] = 'config:js-lib'; - } else if (val[i].startsWith(':masterIssue')) { + } else if (val[i]?.startsWith(':masterIssue')) { isMigrated = true; migratedConfig.extends[i] = val[i].replace( 'masterIssue', diff --git a/lib/versioning/ruby/strategies/replace.ts b/lib/versioning/ruby/strategies/replace.ts index f9d925ee18..848fba0f37 100644 --- a/lib/versioning/ruby/strategies/replace.ts +++ b/lib/versioning/ruby/strategies/replace.ts @@ -10,7 +10,7 @@ function isMajorRange(range: string): boolean { const splitRange = range.split(',').map((part) => part.trim()); return ( splitRange.length === 1 && - splitRange[0].startsWith('~>') && + splitRange[0]?.startsWith('~>') && countInstancesOf(splitRange[0], '.') === 0 ); } @@ -19,9 +19,9 @@ function isCommonRubyMajorRange(range: string): boolean { const splitRange = range.split(',').map((part) => part.trim()); return ( splitRange.length === 2 && - splitRange[0].startsWith('~>') && + splitRange[0]?.startsWith('~>') && countInstancesOf(splitRange[0], '.') === 1 && - splitRange[1].startsWith('>=') + splitRange[1]?.startsWith('>=') ); } @@ -29,9 +29,9 @@ function isCommonRubyMinorRange(range: string): boolean { const splitRange = range.split(',').map((part) => part.trim()); return ( splitRange.length === 2 && - splitRange[0].startsWith('~>') && + splitRange[0]?.startsWith('~>') && countInstancesOf(splitRange[0], '.') === 2 && - splitRange[1].startsWith('>=') + splitRange[1]?.startsWith('>=') ); } -- GitLab