Commit Graph

34 Commits (master)

Author SHA1 Message Date
cinap_lenrek 17136370d8 hgfs: fix loadrevinfo() for empty log bug
loadrevinfo() would fail on a empty log portion due
to a bug in the previous commit.

the loop is supposed to skip all bytes until we encounter
a empty line. the loop starts at the beginning of a line
so when we encounter a \n, we have to terminate, otherwise
read bytes until we see \n (end of a line) and then read
another and test the condition again.
2020-03-01 23:23:01 +01:00
cinap_lenrek 28d864953c hgfs: fix loadrevinfo() breakage on long lines using libbio (thanks deuterion) 2019-12-09 02:01:12 +01:00
cinap_lenrek ac3e3c342f hgfs: fix %.*s usage in walk 2019-02-25 04:08:13 +01:00
cinap_lenrek fd80dde429 hjfs: preserve newlines in commit message (thanks BurnZeZ) 2015-04-22 19:54:13 +02:00
cinap_lenrek 4f4d71b941 hgfs: make data files with meta headers having the right size after open
to get the right data size of a file, the revlog needs to have been
opened and the metaheader parsed. as an optimization, we used to
open revlog only on the first read resulting revlogs with metaheaders
having the wrong size returned by fstat() until the first read().

tar relies on fstat() giving the correct file size, so just open
the revlog on open. reading directories can still yield the wrong
size but it is not that critical.
2014-09-29 21:01:51 +02:00
cinap_lenrek f4f2ff6038 hgfs: avoid revlogupdate() calls when reading root (thanks burnzez)
we do not need to check for revlog updates on every
(directory) read when reading the root. only do it
when reading from the start.
2014-05-08 22:20:26 +02:00
cinap_lenrek 5be7e69c26 hgfs: work in progress stuff... 2012-11-22 00:02:43 +01:00
cinap_lenrek 1d4ab25265 hgfs: remove bogus OTRUNC mode from create() call in fmktemp() 2012-11-21 19:28:40 +01:00
cinap_lenrek 40d11cea3f hgfs: various improvements
lazily close revlog files and keep up to 8
revlogs arround. also cache the latest extracted
file descriptor of a revision in the revlog.
this avoids the quite expensive reextracting/patching
when we reopen the same file revision.

dont use the racy mktemp()/create, instead create
a uniqueue name and create with OEXCL. this also
avoids a bunch of access() calls.

fix eof case and use pread() in fcopy() to avoid the
seeks.

dont modify changelog temp file but simulate trailing
newline instead.
2012-11-21 19:22:46 +01:00
cinap_lenrek 28452d3fe5 hgfs: work in progress stuff 2012-11-18 11:54:04 +01:00
cinap_lenrek 5cb6be9ce3 hgfs: fix metaheader offset for log 2012-11-02 03:31:55 +01:00
cinap_lenrek 4b2a1c104b hgfs: strip metadata header, bogus .n walks 2012-11-01 03:42:24 +01:00
cinap_lenrek 559d2fc835 hgfs: work in progress stuff... 2012-10-29 22:00:38 +01:00
cinap_lenrek 6812f4679b hgfs: more work in progress stuff 2012-10-28 23:18:38 +02:00
cinap_lenrek 5741e1ecfd hgfs: add wip debug command 2012-10-25 01:05:39 +02:00
cinap_lenrek 260fcc61c0 fix wrong use of qid.type == QTDIR comparsion 2012-01-12 15:15:25 +01:00
cinap_lenrek b5ce095300 hgfs: change default mountpoint from /n/hg to /mnt/hg 2011-11-27 22:53:31 +01:00
cinap_lenrek 01a7c491fc hgfs: fix sign bug in path mangeling 2011-10-28 03:44:58 +02:00
cinap_lenrek 6b2b4b58fb hgfs: detect fncache repo format 2011-10-28 00:54:26 +02:00
cinap_lenrek 18bfca7978 hgfs: add rev file, document in manual page 2011-10-16 02:50:52 +02:00
cinap_lenrek 00c461fa18 hgfs: format hashes in ther full length 2011-10-16 00:46:09 +02:00
cinap_lenrek cd51302616 hgfs: spelling 2011-07-02 11:42:21 +02:00
cinap_lenrek 400e1b3643 hgfs: make qid generation machine independent 2011-07-01 08:31:29 +02:00
cinap_lenrek 62186910fa hgfs: fix path mangeling bug, find dothg on startup 2011-06-30 03:05:10 +02:00
cinap_lenrek 2f1a0685ea hgfs: cleanup 2011-06-28 04:19:33 +02:00
cinap_lenrek 6d91601a77 hgfs: get previous file revisions with appending .n or .revn 2011-06-28 03:51:05 +02:00
cinap_lenrek d0485d345d hgfs: change semantics of log to contain only the file list 2011-06-27 10:07:19 +02:00
cinap_lenrek e715b511e0 hgfs: allow "tip" as revision, do perm checking 2011-06-27 23:01:19 +00:00
cinap_lenrek 5f7342a461 merge 2011-06-27 11:28:13 +00:00
cinap_lenrek 0f61b5506c hgfs: honor x-bit in manifest 2011-06-27 11:27:32 +00:00
cinap_lenrek 2b5a7cebc2 hgfs: add tree caching 2011-06-27 09:45:33 +00:00
cinap_lenrek 637a770a16 hgfs: update index 2011-06-27 05:43:25 +00:00
aiju a7b0f32bbe hgfs: fixed mkfile 2011-06-26 12:10:34 +02:00
cinap_lenrek bc1ff6985c add hgfs, a mercurial filesystem 2011-06-26 07:03:12 +02:00