Skip to content

Commit c03464e

Browse files
ExtendedIssueService.java
- in removeLabel(), URL encode the label before appending to the URL when calling DELETE - reported in jenkinsci#26 - thanks to @longwave for diagnosing the issue!
1 parent c3f6dff commit c03464e

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

src/main/java/org/jenkinsci/plugins/pipeline/github/client/ExtendedIssueService.java

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
import org.eclipse.egit.github.core.service.IssueService;
1010

1111
import java.io.IOException;
12+
import java.net.URLEncoder;
1213
import java.util.HashMap;
1314
import java.util.List;
1415
import java.util.Map;
@@ -143,14 +144,18 @@ public List<Label> addLabels(final IRepositoryIdProvider repository,
143144
public void removeLabel(final IRepositoryIdProvider repository,
144145
final int issueNumber,
145146
final String label) throws IOException {
146-
String repoId = this.getId(repository);
147-
StringBuilder uri = new StringBuilder("/repos");
147+
final String repoId = this.getId(repository);
148+
final StringBuilder uri = new StringBuilder("/repos");
148149
uri.append('/').append(repoId);
149150
uri.append("/issues");
150151
uri.append('/').append(issueNumber);
151152
uri.append("/labels");
152153
uri.append('/');
153-
uri.append(label);
154+
155+
final String encodedLabel = URLEncoder.encode(label, "UTF-8")
156+
.replace("+", "%20")
157+
.replace(".", "%2E");
158+
uri.append(encodedLabel);
154159
getClient().delete(uri.toString());
155160
}
156161

0 commit comments

Comments
 (0)