Show More
@@ -303,6 +303,14 def changeset(web, req, tmpl): | |||
|
303 | 303 | |
|
304 | 304 | rev = changeset |
|
305 | 305 | |
|
306 | def decodepath(path): | |
|
307 | """Hook for mapping a path in the repository to a path in the | |
|
308 | working copy. | |
|
309 | ||
|
310 | Extensions (e.g., largefiles) can override this to remap files in | |
|
311 | the virtual file system presented by the manifest command below.""" | |
|
312 | return path | |
|
313 | ||
|
306 | 314 | def manifest(web, req, tmpl): |
|
307 | 315 | ctx = webutil.changectx(web.repo, req) |
|
308 | 316 | path = webutil.cleanpath(web.repo, req.form.get('file', [''])[0]) |
@@ -318,13 +326,17 def manifest(web, req, tmpl): | |||
|
318 | 326 | l = len(path) |
|
319 | 327 | abspath = "/" + path |
|
320 | 328 | |
|
321 | for f, n in mf.iteritems(): | |
|
329 | for full, n in mf.iteritems(): | |
|
330 | # the virtual path (working copy path) used for the full | |
|
331 | # (repository) path | |
|
332 | f = decodepath(full) | |
|
333 | ||
|
322 | 334 | if f[:l] != path: |
|
323 | 335 | continue |
|
324 | 336 | remain = f[l:] |
|
325 | 337 | elements = remain.split('/') |
|
326 | 338 | if len(elements) == 1: |
|
327 | files[remain] = f | |
|
339 | files[remain] = full | |
|
328 | 340 | else: |
|
329 | 341 | h = dirs # need to retain ref to dirs (root) |
|
330 | 342 | for elem in elements[0:-1]: |
General Comments 0
You need to be logged in to leave comments.
Login now