Show More
@@ -153,10 +153,11 b' class hgwebdir(object):' | |||
|
153 | 153 | # nested indexes and hgwebs |
|
154 | 154 | |
|
155 | 155 | repos = dict(self.repos) |
|
156 |
|
|
|
157 |
|
|
|
156 | virtualrepo = virtual | |
|
157 | while virtualrepo: | |
|
158 | real = repos.get(virtualrepo) | |
|
158 | 159 | if real: |
|
159 | req.env['REPO_NAME'] = virtual | |
|
160 | req.env['REPO_NAME'] = virtualrepo | |
|
160 | 161 | try: |
|
161 | 162 | repo = hg.repository(self.ui, real) |
|
162 | 163 | return hgweb(repo).run_wsgi(req) |
@@ -166,16 +167,16 b' class hgwebdir(object):' | |||
|
166 | 167 | except error.RepoError, inst: |
|
167 | 168 | raise ErrorResponse(HTTP_SERVER_ERROR, str(inst)) |
|
168 | 169 | |
|
169 |
|
|
|
170 | subdir = virtual + '/' | |
|
171 | if [r for r in repos if r.startswith(subdir)]: | |
|
172 | req.respond(HTTP_OK, ctype) | |
|
173 | return self.makeindex(req, tmpl, subdir) | |
|
174 | ||
|
175 | up = virtual.rfind('/') | |
|
170 | up = virtualrepo.rfind('/') | |
|
176 | 171 | if up < 0: |
|
177 | 172 | break |
|
178 | virtual = virtual[:up] | |
|
173 | virtualrepo = virtualrepo[:up] | |
|
174 | ||
|
175 | # browse subdirectories | |
|
176 | subdir = virtual + '/' | |
|
177 | if [r for r in repos if r.startswith(subdir)]: | |
|
178 | req.respond(HTTP_OK, ctype) | |
|
179 | return self.makeindex(req, tmpl, subdir) | |
|
179 | 180 | |
|
180 | 181 | # prefixes not found |
|
181 | 182 | req.respond(HTTP_NOT_FOUND, ctype) |
@@ -77,7 +77,7 b' should give a 404 - repo is not publishe' | |||
|
77 | 77 | 404 Not Found |
|
78 | 78 | |
|
79 | 79 | |
|
80 | error: repository c not found | |
|
80 | error: repository c/file/tip/c not found | |
|
81 | 81 | [1] |
|
82 | 82 | |
|
83 | 83 | atom-log without basedir |
@@ -56,19 +56,19 b' should fail' | |||
|
56 | 56 | 404 Not Found |
|
57 | 57 | |
|
58 | 58 | |
|
59 | error: repository circle not found | |
|
59 | error: repository circle/al/file/tip/a not found | |
|
60 | 60 | [1] |
|
61 | 61 | $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/circle/b/file/tip/a?style=raw' |
|
62 | 62 | 404 Not Found |
|
63 | 63 | |
|
64 | 64 | |
|
65 | error: repository circle not found | |
|
65 | error: repository circle/b/file/tip/a not found | |
|
66 | 66 | [1] |
|
67 | 67 | $ "$TESTDIR/get-with-headers.py" localhost:$HGPORT '/circle/c/file/tip/a?style=raw' |
|
68 | 68 | 404 Not Found |
|
69 | 69 | |
|
70 | 70 | |
|
71 | error: repository circle not found | |
|
71 | error: repository circle/c/file/tip/a not found | |
|
72 | 72 | [1] |
|
73 | 73 | |
|
74 | 74 | collections errors |
General Comments 0
You need to be logged in to leave comments.
Login now