Index: third_party/buildbot_8_4p1/buildbot/status/web/builder.py |
diff --git a/third_party/buildbot_8_4p1/buildbot/status/web/builder.py b/third_party/buildbot_8_4p1/buildbot/status/web/builder.py |
index f9d5b829bd423ccf574eb95f6e7ffccf8a33e5bc..573e4e851875797f6bd5fd381fa5e528cd06b5f4 100644 |
--- a/third_party/buildbot_8_4p1/buildbot/status/web/builder.py |
+++ b/third_party/buildbot_8_4p1/buildbot/status/web/builder.py |
@@ -16,7 +16,7 @@ |
from twisted.web import html |
from twisted.web.util import Redirect |
-import re, urllib, time |
+import urllib, time |
from twisted.python import log |
from twisted.internet import defer |
from buildbot import interfaces |
@@ -160,12 +160,15 @@ class StatusResourceBuilder(HtmlResource, BuildLineMixin): |
log.msg("..but didn't include a username to blame") |
return Redirect(path_to_authfail(req)) |
+ master = self.getBuildmaster(req) |
+ |
# keep weird stuff out of the branch revision, and property strings. |
- # TODO: centralize this somewhere. |
- if not re.match(r'^[\w.+/~-]*$', branch): |
+ branch_validate = master.config.validation['branch'] |
+ revision_validate = master.config.validation['revision'] |
+ if not branch_validate.match(branch): |
log.msg("bad branch '%s'" % branch) |
return Redirect(path_to_builder(req, self.builder_status)) |
- if not re.match(r'^[ \w\.\-\/]*$', revision): |
+ if not revision_validate.match(revision): |
log.msg("bad revision '%s'" % revision) |
return Redirect(path_to_builder(req, self.builder_status)) |
properties = getAndCheckProperties(req) |
@@ -176,7 +179,6 @@ class StatusResourceBuilder(HtmlResource, BuildLineMixin): |
if not revision: |
revision = None |
- master = self.getBuildmaster(req) |
d = master.db.sourcestamps.addSourceStamp(branch=branch, |
revision=revision, project=project, repository=repository) |
def make_buildset(ssid): |