Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/hgweb/webcommands.py @ 7361:9fe97eea5510
linkrev: take a revision number rather than a hash
author | Matt Mackall <mpm@selenic.com> |
---|---|
date | Wed, 12 Nov 2008 15:19:14 -0600 |
parents | 55651328dfcc |
children | 0fa3b6677027 |
comparison
equal
deleted
inserted
replaced
7360:42f1b8cb9a60 | 7361:9fe97eea5510 |
---|---|
524 fl = web.repo.file(f) | 524 fl = web.repo.file(f) |
525 numrevs = len(fl) | 525 numrevs = len(fl) |
526 if not numrevs: # file doesn't exist at all | 526 if not numrevs: # file doesn't exist at all |
527 raise | 527 raise |
528 rev = webutil.changectx(web.repo, req).rev() | 528 rev = webutil.changectx(web.repo, req).rev() |
529 first = fl.linkrev(fl.node(0)) | 529 first = fl.linkrev(0) |
530 if rev < first: # current rev is from before file existed | 530 if rev < first: # current rev is from before file existed |
531 raise | 531 raise |
532 frev = numrevs - 1 | 532 frev = numrevs - 1 |
533 while fl.linkrev(fl.node(frev)) > rev: | 533 while fl.linkrev(frev) > rev: |
534 frev -= 1 | 534 frev -= 1 |
535 fctx = web.repo.filectx(f, fl.linkrev(fl.node(frev))) | 535 fctx = web.repo.filectx(f, fl.linkrev(frev)) |
536 | 536 |
537 count = fctx.filerev() + 1 | 537 count = fctx.filerev() + 1 |
538 pagelen = web.maxshortchanges | 538 pagelen = web.maxshortchanges |
539 start = max(0, fctx.filerev() - pagelen + 1) # first rev on this page | 539 start = max(0, fctx.filerev() - pagelen + 1) # first rev on this page |
540 end = min(count, start + pagelen) # last rev on this page | 540 end = min(count, start + pagelen) # last rev on this page |