diff options
author | Jacek Centkowski <jcentkowski@digital.ai> | 2020-09-02 13:31:09 +0200 |
---|---|---|
committer | Jacek Centkowski <jcentkowski@digital.ai> | 2020-09-04 08:15:05 +0000 |
commit | 7b8f1ac95d355b1bfe3e8a0fa5a7fb9718fcb1b7 (patch) | |
tree | dc686e8db85b473c27c3865e5dcb5b5b2cb1df24 | |
parent | 450bc207a690af62c7e5046c0308a733d56162e8 (diff) |
Decode group id before using it to add [cc-]reviewers
When Group is being suggested for [cc-]reviewer its UUID gets encoded
by server prior to sending it back to client. That has no impact on
Gerrit internal groups however external groups are affected:
* LDAP - 'ldap/' UUID prefix becomes 'ldap%2F'
* CollabNet - 'teamforge:' UUID prefix becomes 'teamforge%3A'
Hitting the Reply button works fine in GWT as group UUID gets decoded
before being sent back to the server, however, in PolymerUI it is being
sent as is and results in the following error:
Error 400: Account 'teamforge%3Aproj1466%3Ateam2079' not found
teamforge%3Aproj1466%3Ateam2079 does not identify a registered user or
group.
URI decoding before sending the group ID back fixes the issue.
Bug: Issue 13350
Change-Id: Icaf17bdc849f6b9b4b5041f59b3a9cce9a064e5f
-rw-r--r-- | polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js index 40a0922779..b8eeb9084d 100644 --- a/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js +++ b/polygerrit-ui/app/elements/change/gr-reply-dialog/gr-reply-dialog.js @@ -424,7 +424,7 @@ if (reviewer.account) { reviewerId = reviewer.account._account_id || reviewer.account.email; } else if (reviewer.group) { - reviewerId = reviewer.group.id; + reviewerId = decodeURIComponent(reviewer.group.id); confirmed = reviewer.group.confirmed; } return {reviewer: reviewerId, confirmed}; |