<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/utf8.h, branch v2.6.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.6.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.6.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2015-06-24T19:21:46Z</updated>
<entry>
<title>Merge branch 'es/utf8-stupid-compiler-workaround'</title>
<updated>2015-06-24T19:21:46Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2015-06-24T19:21:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5d24b109a64827708cbe98b865aba5d51a2f7c3b'/>
<id>urn:sha1:5d24b109a64827708cbe98b865aba5d51a2f7c3b</id>
<content type='text'>
A compilation workaround.

* es/utf8-stupid-compiler-workaround:
  utf8: NO_ICONV: silence uninitialized variable warning
</content>
</entry>
<entry>
<title>utf8: NO_ICONV: silence uninitialized variable warning</title>
<updated>2015-06-05T22:36:35Z</updated>
<author>
<name>Eric Sunshine</name>
<email>sunshine@sunshineco.com</email>
</author>
<published>2015-06-05T06:42:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=e654eb29ab9da97f6acabc261f88aa1f41f78a8f'/>
<id>urn:sha1:e654eb29ab9da97f6acabc261f88aa1f41f78a8f</id>
<content type='text'>
The last argument of reencode_string_len() is an 'int *' which is
assigned the length of the converted string. When NO_ICONV is defined,
however, reencode_string_len() is stubbed out by the macro:

    #define reencode_string_len(a,b,c,d,e) NULL

which never assigns a value to the final argument. When called like
this:

    int n;
    char *s = reencode_string_len(..., &amp;n);
    if (s)
        do_something(s, n);

some compilers complain that 'n' is used uninitialized within the
conditional.

Signed-off-by: Eric Sunshine &lt;sunshine@sunshineco.com&gt;
Reviewed-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>utf8-bom: introduce skip_utf8_bom() helper</title>
<updated>2015-04-16T18:35:06Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2015-04-16T17:45:29Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=dde843e7378f65004415bd108038659de9ce2abd'/>
<id>urn:sha1:dde843e7378f65004415bd108038659de9ce2abd</id>
<content type='text'>
With the recent change to ignore the UTF8 BOM at the beginning of
.gitignore files, we now have two codepaths that do such a skipping
(the other one is for reading the configuration files).

Introduce utf8_bom[] constant string and skip_utf8_bom() helper
and teach .gitignore code how to use it.

Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>utf8: add is_hfs_dotgit() helper</title>
<updated>2014-12-17T19:04:39Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2014-12-15T22:56:59Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=6162a1d323d24fd8cbbb1a6145a91fb849b2568f'/>
<id>urn:sha1:6162a1d323d24fd8cbbb1a6145a91fb849b2568f</id>
<content type='text'>
We do not allow paths with a ".git" component to be added to
the index, as that would mean repository contents could
overwrite our repository files. However, asking "is this
path the same as .git" is not as simple as strcmp() on some
filesystems.

HFS+'s case-folding does more than just fold uppercase into
lowercase (which we already handle with strcasecmp). It may
also skip past certain "ignored" Unicode code points, so
that (for example) ".gi\u200ct" is mapped ot ".git".

The full list of folds can be found in the tables at:

  https://www.opensource.apple.com/source/xnu/xnu-1504.15.3/bsd/hfs/hfscommon/Unicode/UCStringCompareData.h

Implementing a full "is this path the same as that path"
comparison would require us importing the whole set of
tables.  However, what we want to do is much simpler: we
only care about checking ".git". We know that 'G' is the
only thing that folds to 'g', and so on, so we really only
need to deal with the set of ignored code points, which is
much smaller.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>add missing "format" function attributes</title>
<updated>2013-07-10T05:23:04Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2013-07-10T00:18:40Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=4621085b7eb2f4cffe16d508988ff9b4a874b4ef'/>
<id>urn:sha1:4621085b7eb2f4cffe16d508988ff9b4a874b4ef</id>
<content type='text'>
For most of our functions that take printf-like formats, we
use gcc's __attribute__((format)) to get compiler warnings
when the functions are misused. Let's give a few more
functions the same protection.

In most cases, the annotations do not uncover any actual
bugs; the only code change needed is that we passed a size_t
to transfer_debug, which expected an int. Since we expect
the passed-in value to be a relatively small buffer size
(and cast a similar value to int directly below), we can
just cast away the problem.

Signed-off-by: Jeff King &lt;peff@peff.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>pretty: support %&gt;&gt; that steal trailing spaces</title>
<updated>2013-04-18T23:28:29Z</updated>
<author>
<name>Nguyễn Thái Ngọc Duy</name>
<email>pclouds@gmail.com</email>
</author>
<published>2013-04-18T23:08:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=1640632b4f3f69775f04e9e40dfd2fd912e0f458'/>
<id>urn:sha1:1640632b4f3f69775f04e9e40dfd2fd912e0f458</id>
<content type='text'>
This is pretty useful in `%&lt;(100)%s%Cred%&gt;(20)% an' where %s does not
use up all 100 columns and %an needs more than 20 columns. By
replacing %&gt;(20) with %&gt;&gt;(20), %an can steal spaces from %s.

%&gt;&gt; understands escape sequences, so %Cred does not stop it from
stealing spaces in %&lt;(100).

Signed-off-by: Nguyễn Thái Ngọc Duy &lt;pclouds@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>pretty: support truncating in %&gt;, %&lt; and %&gt;&lt;</title>
<updated>2013-04-18T23:28:29Z</updated>
<author>
<name>Nguyễn Thái Ngọc Duy</name>
<email>pclouds@gmail.com</email>
</author>
<published>2013-04-18T23:08:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a7f01c6b4ddf9f2f6bdcb23fc7afb56695807cba'/>
<id>urn:sha1:a7f01c6b4ddf9f2f6bdcb23fc7afb56695807cba</id>
<content type='text'>
%&gt;(N,trunc) truncates the right part after N columns and replace the
last two letters with "..". ltrunc does the same on the left. mtrunc
cuts the middle out.

Signed-off-by: Nguyễn Thái Ngọc Duy &lt;pclouds@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>utf8.c: add reencode_string_len() that can handle NULs in string</title>
<updated>2013-04-18T23:28:28Z</updated>
<author>
<name>Nguyễn Thái Ngọc Duy</name>
<email>pclouds@gmail.com</email>
</author>
<published>2013-04-18T23:08:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=b782bbab94e3618aea352907caa77321b487b918'/>
<id>urn:sha1:b782bbab94e3618aea352907caa77321b487b918</id>
<content type='text'>
Signed-off-by: Nguyễn Thái Ngọc Duy &lt;pclouds@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>utf8.c: add utf8_strnwidth() with the ability to skip ansi sequences</title>
<updated>2013-04-18T23:28:28Z</updated>
<author>
<name>Nguyễn Thái Ngọc Duy</name>
<email>pclouds@gmail.com</email>
</author>
<published>2013-04-18T23:08:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2bc1e7ecba1fcd73112d5e6703bdc28fb4da530a'/>
<id>urn:sha1:2bc1e7ecba1fcd73112d5e6703bdc28fb4da530a</id>
<content type='text'>
Signed-off-by: Nguyễn Thái Ngọc Duy &lt;pclouds@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'ks/rfc2047-one-char-at-a-time'</title>
<updated>2013-03-25T21:00:46Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-03-25T21:00:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=573f1a9cf163365637a36a6d95c670883a918352'/>
<id>urn:sha1:573f1a9cf163365637a36a6d95c670883a918352</id>
<content type='text'>
When "format-patch" quoted a non-ascii strings on the header files,
it incorrectly applied rfc2047 and chopped a single character in
the middle of it.

* ks/rfc2047-one-char-at-a-time:
  format-patch: RFC 2047 says multi-octet character may not be split
</content>
</entry>
</feed>
