Skip to content
GitLab
Projects Groups Topics Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • G GProtector
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Artifacts
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Gambio PublicGambio Public
  • GProtector
  • Merge requests
  • !2
The source project of this merge request has been removed.

refs #67974 Error message in log regarding invalid language ISO code

  • Review changes

  • Download
  • Patches
  • Plain diff
Merged Till Tepelmann requested to merge t.tepelmann/gprotector:bugfix/67974 into develop Nov 27, 2020
  • Overview 0
  • Commits 1
  • Pipelines 0
  • Changes 1

refs #67974 Error message in log regarding invalid language ISO code if invalid parameters were passed via URL

Fehlermeldung im Log bezüglich nicht gültiger Sprach ISO-Code wenn ungültige Parameter über die URL übergeben wurden

Kann wie folgt reproduziert werden:

  1. Shop installieren, oder aufrufen
  2. meinshop.de/?cPath=20_73_171&cat=c171_Spider-Man---LE---Vault-Edition-Spider-Man.html&language=de%27%5B0%5D aufrufen
  3. im Log wird nachfolgende Fehlermeldung geschrieben

Erwartetes Ergebnis: Der GProtector filtert den Paramater "language=de%27%5B0%5D" auf "de" und der Shop ist normal aufrufbar es wird kein Fehler im Error-Log erzeugt.

Tatsächliches Ergebnis: Es wird ein Fehler im Error-Log erzeugt weil der GProtector den Parameter "language" nicht auf zweistellige ISO Codes gefiltert hat und eine Exception geworfen wird.


Error message in log regarding invalid language ISO code if invalid parameters were passed via URL

Can be reproduced as follows:

  1. install or access the store
  2. meinshop.de/?cPath=20_73_171&cat=c171_Spider-Man---LE---Vault-Edition-Spider-Man.html&language=en%27%5B0%5D access
  3. the following error message is written in the log

Expected result: The GProtector filters the parameter "language=de%27%5B0%5D" to "de" and the shop can be accessed normally.

Actual result: An error is generated in the error log because the GProtector did not filter the parameter "language" to two-digit ISO codes and an exception is thrown.

Uncaught InvalidArgumentException: Language code must be a two character ISO code. in /vendor/webmozart/assert/src/Assert.php:2220 Stack trace: #0 /vendor/webmozart/assert/src/Assert.php(1327): Webmozart\Assert\Assert::reportInvalidArgument('Language code m...') #1 /GambioCore/Language/Model/LanguageCode.php(49): Webmozart\Assert\Assert::regex('de'[0]', '/^[a-zA-Z]{2}$/', 'Language code m...') #2 /GambioCore/Language/Services/LanguageService.php(91): Gambio\Core\Language\Model\LanguageCode::create('de'[0]') #3 /GambioCore/Application/Kernel/Bootstrapper/LoadUserPreferencesFromSession.php(47): Gambio\Core\Language\Services\LanguageService->getLanguageByCode('de'[0]') #4 /GXMainComponents/Shared/LegacyDependencyContainer.php(198): Gambio\Core\Application\Kernel\Bootstrapper\LoadUserPreferencesFromSe

Assignee
Assign to
Reviewers
Request review from
Time tracking
Source branch: bugfix/67974