HomePhabricator

Trim and URI encode symbol names before building URIs from them

Description

Trim and URI encode symbol names before building URIs from them

Summary:
Fixes T13437. This URI construction was just missing URI encoding.

Also, trim the symbol because my test case ended up catching "#define\n" as symbol text.

Test Plan:

  • Configured a repository to have PHP symbols.
  • Touched a ".php" file with "#define" in it.
  • Diffed the change.
  • Command-clicked "#define" in the UI, in Safari/MacOS, to jump to the definition.
    • Before: taken to a nonsense page where "#define" became an anchor.
    • After: taken to symbol search for "#define".

Maniphest Tasks: T13437

Differential Revision: https://secure.phabricator.com/D20876