<feed xmlns='http://www.w3.org/2005/Atom'>
<title>cgit/cgit.h, branch v0.9.2</title>
<subtitle>A hyperfast web frontend for git repositories written in C.</subtitle>
<id>http://git.cetero.st/cgit/atom/cgit.h?h=v0.9.2</id>
<link rel='self' href='http://git.cetero.st/cgit/atom/cgit.h?h=v0.9.2'/>
<link rel='alternate' type='text/html' href='http://git.cetero.st/cgit/'/>
<updated>2013-05-26T14:30:03Z</updated>
<entry>
<title>readme: use string_list instead of space deliminations</title>
<updated>2013-05-26T14:30:03Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2013-05-26T13:20:02Z</published>
<link rel='alternate' type='text/html' href='http://git.cetero.st/cgit/commit/?id=dcbc0438b2543a733858d62170f3110a89edbed6'/>
<id>urn:sha1:dcbc0438b2543a733858d62170f3110a89edbed6</id>
<content type='text'>
Now this is possible in cgitrc -

readme=:README.md
readme=:readme.md
readme=:README.mkd
readme=:readme.mkd
readme=:README.rst
readme=:readme.rst
readme=:README.html
readme=:readme.html
readme=:README.htm
readme=:readme.htm
readme=:README.txt
readme=:readme.txt
readme=:README
readme=:readme
readme=:INSTALL.txt
readme=:install.txt
readme=:INSTALL
readme=:install

Suggested-by: John Keeping &lt;john@keeping.me.uk&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
<entry>
<title>Add branch-sort and repo.branch-sort options.</title>
<updated>2013-04-10T12:48:26Z</updated>
<author>
<name>Jason A. Donenfeld</name>
<email>Jason@zx2c4.com</email>
</author>
<published>2013-04-08T14:57:12Z</published>
<link rel='alternate' type='text/html' href='http://git.cetero.st/cgit/commit/?id=389cc17357e2040c9542d3e085f64a8d2f085e9a'/>
<id>urn:sha1:389cc17357e2040c9542d3e085f64a8d2f085e9a</id>
<content type='text'>
When set to "name", branches are sorted by name, which is the current
default. When set to "age", branches are sorted by the age of the
repository.

This feature was requested by Konstantin Ryabitsev for use on
kernel.org.

Proposed-by: Konstantin Ryabitsev &lt;mricon@kernel.org&gt;
</content>
</entry>
<entry>
<title>shared.c: add strbuf_ensure_end</title>
<updated>2013-04-08T14:10:11Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2013-04-07T13:03:47Z</published>
<link rel='alternate' type='text/html' href='http://git.cetero.st/cgit/commit/?id=d2e20e38141c882e46eaa77f172fc2ae37a19d3b'/>
<id>urn:sha1:d2e20e38141c882e46eaa77f172fc2ae37a19d3b</id>
<content type='text'>
This is a small helper so that we can easily ensure that a strbuf ends
with the specified character.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
</content>
</entry>
<entry>
<title>html.c: add various strbuf and varadic helpers</title>
<updated>2013-04-08T14:10:11Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2013-04-07T13:40:50Z</published>
<link rel='alternate' type='text/html' href='http://git.cetero.st/cgit/commit/?id=fd00d2f9d6088223f57006949dc6ce7c36316a79'/>
<id>urn:sha1:fd00d2f9d6088223f57006949dc6ce7c36316a79</id>
<content type='text'>
This adds the fmtalloc helper, html_txtf, html_vtxtf, and html_attrf.

These takes a printf style format string like htmlf but escapes the
resulting string.  The html_vtxtf variant takes a va_list whereas
html_txtf is variadic.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
</content>
</entry>
<entry>
<title>Mark char* fields in struct cgit_page as const</title>
<updated>2013-04-08T13:59:51Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2013-04-07T11:46:45Z</published>
<link rel='alternate' type='text/html' href='http://git.cetero.st/cgit/commit/?id=57d09bf448990b3a67436e928807e854e491756f'/>
<id>urn:sha1:57d09bf448990b3a67436e928807e854e491756f</id>
<content type='text'>
Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
</content>
</entry>
<entry>
<title>Fix out-of-bounds memory accesses with virtual_root=""</title>
<updated>2013-04-08T13:59:46Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2013-04-01T18:03:34Z</published>
<link rel='alternate' type='text/html' href='http://git.cetero.st/cgit/commit/?id=b1f17f168b91d709c0c0e62608de301a36f06da9'/>
<id>urn:sha1:b1f17f168b91d709c0c0e62608de301a36f06da9</id>
<content type='text'>
The CGit configuration variable virtual_root is normalized so that it
does not have a trailing '/' character, but it is allowed to be empty
(the empty string and NULL have different meanings here) and there is
code that is insufficiently cautious when checking if it ends in a '/':

	if (virtual_root[strlen(virtual_root) - 1] != '/')

Clearly this check is redundant, but rather than simply removing it we
get a slight efficiency improvement by switching the normalization so
that the virtual_root variable always ends in '/'.  Do this with a new
"ensure_end" helper.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
</content>
</entry>
<entry>
<title>Maŕk cgit_environment members const</title>
<updated>2013-04-08T13:43:17Z</updated>
<author>
<name>Lukas Fleischer</name>
<email>cgit@cryptocrack.de</email>
</author>
<published>2013-04-01T15:11:14Z</published>
<link rel='alternate' type='text/html' href='http://git.cetero.st/cgit/commit/?id=3a8432437934a0a95f2618b534b1f5b3494d6b18'/>
<id>urn:sha1:3a8432437934a0a95f2618b534b1f5b3494d6b18</id>
<content type='text'>
These reflect the values of environment variables and should never be
changed. Add another xstrdup() when we assign environment variables to
strings that are potentially non-constant.

Signed-off-by: Lukas Fleischer &lt;cgit@cryptocrack.de&gt;
</content>
</entry>
<entry>
<title>Free reflists after usage</title>
<updated>2013-03-05T00:55:12Z</updated>
<author>
<name>Lukas Fleischer</name>
<email>cgit@cryptocrack.de</email>
</author>
<published>2013-03-04T12:25:33Z</published>
<link rel='alternate' type='text/html' href='http://git.cetero.st/cgit/commit/?id=1268afe83692cb8a9ea839ab979d82458da2d03d'/>
<id>urn:sha1:1268afe83692cb8a9ea839ab979d82458da2d03d</id>
<content type='text'>
Free reflists in cgit_print_branches() and in cgit_print_tags() before
returning reflist structures to the stack.

This fixes following memory leaks seen with "PATH_INFO=/cgit/refs/":

    ==5710== 1,312 (32 direct, 1,280 indirect) bytes in 1 blocks are definitely lost in loss record 63 of 71
    ==5710==    at 0x4C2C04B: malloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==5710==    by 0x4C2C2FF: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==5710==    by 0x46CA9B: xrealloc (wrapper.c:100)
    ==5710==    by 0x40AAA6: cgit_add_ref (shared.c:156)
    ==5710==    by 0x40ABC4: cgit_refs_cb (shared.c:186)
    ==5710==    by 0x44BCBA: do_one_ref (refs.c:527)
    ==5710==    by 0x44D240: do_for_each_ref_in_dir (refs.c:553)
    ==5710==    by 0x44D6BA: do_for_each_ref (refs.c:1298)
    ==5710==    by 0x410FE2: cgit_print_branches (ui-refs.c:191)
    ==5710==    by 0x4111E9: cgit_print_refs (ui-refs.c:244)
    ==5710==    by 0x407C85: refs_fn (cmd.c:105)
    ==5710==    by 0x405DDF: process_request (cgit.c:566)
    ==5710==
    ==5710== 6,846 (256 direct, 6,590 indirect) bytes in 1 blocks are definitely lost in loss record 68 of 71
    ==5710==    at 0x4C2C25E: realloc (in /usr/lib/valgrind/vgpreload_memcheck-amd64-linux.so)
    ==5710==    by 0x46CA9B: xrealloc (wrapper.c:100)
    ==5710==    by 0x40AAA6: cgit_add_ref (shared.c:156)
    ==5710==    by 0x40ABC4: cgit_refs_cb (shared.c:186)
    ==5710==    by 0x44BCBA: do_one_ref (refs.c:527)
    ==5710==    by 0x44D240: do_for_each_ref_in_dir (refs.c:553)
    ==5710==    by 0x44D6EC: do_for_each_ref (refs.c:1288)
    ==5710==    by 0x4110D5: cgit_print_tags (ui-refs.c:218)
    ==5710==    by 0x4111FD: cgit_print_refs (ui-refs.c:246)
    ==5710==    by 0x407C85: refs_fn (cmd.c:105)
    ==5710==    by 0x405DDF: process_request (cgit.c:566)
    ==5710==    by 0x407490: cache_process (cache.c:322)

Signed-off-by: Lukas Fleischer &lt;cgit@cryptocrack.de&gt;
</content>
</entry>
<entry>
<title>Update git to v1.7.7.7</title>
<updated>2013-03-02T15:38:03Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2013-03-02T12:32:12Z</published>
<link rel='alternate' type='text/html' href='http://git.cetero.st/cgit/commit/?id=2ab1cd9f3b796fa679c9d1b1ce338aaa2b0b1e53'/>
<id>urn:sha1:2ab1cd9f3b796fa679c9d1b1ce338aaa2b0b1e53</id>
<content type='text'>
This release changes the archive interface so that we now need to pass
argv into write_archive().

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
</content>
</entry>
<entry>
<title>Make "owner" column on index page configurable</title>
<updated>2013-02-01T11:50:24Z</updated>
<author>
<name>Florian Pritz</name>
<email>bluewind@xinu.at</email>
</author>
<published>2013-02-01T09:59:13Z</published>
<link rel='alternate' type='text/html' href='http://git.cetero.st/cgit/commit/?id=b1e172acca870e7999f2d2d917db7b4c42aa05b3'/>
<id>urn:sha1:b1e172acca870e7999f2d2d917db7b4c42aa05b3</id>
<content type='text'>
This is not really needed for personal sites where all repos belong to
the same person. Since it is pretty useful for shared sites however, it
should be configurable.

Signed-off-by: Florian Pritz &lt;bluewind@xinu.at&gt;
Signed-off-by: Jason A. Donenfeld &lt;Jason@zx2c4.com&gt;
</content>
</entry>
</feed>
