<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/git-compat-util.h, branch v2.3.1</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v2.3.1</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v2.3.1'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2015-02-25T06:09:54Z</updated>
<entry>
<title>Merge branch 'jk/blame-commit-label' into maint</title>
<updated>2015-02-25T06:09:54Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2015-02-25T06:09:54Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=faf723a631aff822b4808c496c0970edb0ca2a99'/>
<id>urn:sha1:faf723a631aff822b4808c496c0970edb0ca2a99</id>
<content type='text'>
"git blame HEAD -- missing" failed to correctly say "HEAD" when it
tried to say "No such path 'missing' in HEAD".

* jk/blame-commit-label:
  blame.c: fix garbled error message
  use xstrdup_or_null to replace ternary conditionals
  builtin/commit.c: use xstrdup_or_null instead of envdup
  builtin/apply.c: use xstrdup_or_null instead of null_strdup
  git-compat-util: add xstrdup_or_null helper
</content>
</entry>
<entry>
<title>Merge branch 'rh/autoconf-rhel3'</title>
<updated>2015-01-14T20:37:21Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2015-01-14T20:37:21Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=63a0e83ea6ea1e9d46bfd9e8c1298c6ca9f077ee'/>
<id>urn:sha1:63a0e83ea6ea1e9d46bfd9e8c1298c6ca9f077ee</id>
<content type='text'>
Build update for older RHEL.

* rh/autoconf-rhel3:
  configure.ac: check for HMAC_CTX_cleanup
  configure.ac: check for clock_gettime and CLOCK_MONOTONIC
  configure.ac: check 'tv_nsec' field in 'struct stat'
</content>
</entry>
<entry>
<title>git-compat-util: add xstrdup_or_null helper</title>
<updated>2015-01-13T18:03:30Z</updated>
<author>
<name>Jeff King</name>
<email>peff@peff.net</email>
</author>
<published>2015-01-13T01:57:37Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d64ea0f83bd7e676778f833c57f969a94518a28d'/>
<id>urn:sha1:d64ea0f83bd7e676778f833c57f969a94518a28d</id>
<content type='text'>
It's a common idiom to duplicate a string if it is non-NULL,
or pass a literal NULL through. This is already a one-liner
in C, but you do have to repeat the name of the string
twice. So if there's a function call, you must write:

  const char *x = some_fun(...);
  return x ? xstrdup(x) : NULL;

instead of (with this patch) just:

  return xstrdup_or_null(some_fun(...));

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>configure.ac: check for HMAC_CTX_cleanup</title>
<updated>2015-01-09T23:33:57Z</updated>
<author>
<name>Reuben Hawkins</name>
<email>reubenhwk@gmail.com</email>
</author>
<published>2015-01-08T20:00:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=88e011814b9498ee1170d82462a19f72a86f9d82'/>
<id>urn:sha1:88e011814b9498ee1170d82462a19f72a86f9d82</id>
<content type='text'>
OpenSSL version 0.9.6b and before defined the function HMAC_cleanup.
Newer versions define HMAC_CTX_cleanup.  Check for HMAC_CTX_cleanup and
fall back to HMAC_cleanup when the newer function is missing.

Signed-off-by: Reuben Hawkins &lt;reubenhwk@gmail.com&gt;
Reviewed-by: Eric Sunshine &lt;sunshine@sunshineco.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'es/squelch-openssl-warnings-on-macosx'</title>
<updated>2015-01-07T21:08:30Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2015-01-07T21:08:30Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=74a101eb48b72fad372cfa15669a3b6c55fb1046'/>
<id>urn:sha1:74a101eb48b72fad372cfa15669a3b6c55fb1046</id>
<content type='text'>
Squelch useless compiler warnings on Mac OS X.

* es/squelch-openssl-warnings-on-macosx:
  git-compat-util: suppress unavoidable Apple-specific deprecation warnings
</content>
</entry>
<entry>
<title>Merge branch 'dm/compat-s-ifmt-for-zos'</title>
<updated>2014-12-22T20:27:16Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-12-22T20:27:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2f17ecbd8d58c79e76767da82cf824840dfd367f'/>
<id>urn:sha1:2f17ecbd8d58c79e76767da82cf824840dfd367f</id>
<content type='text'>
Long overdue departure from the assumption that S_IFMT is shared by
everybody made in 2005.

* dm/compat-s-ifmt-for-zos:
  compat: convert modes to use portable file type values
</content>
</entry>
<entry>
<title>Merge branch 'rj/no-xopen-source-for-cygwin'</title>
<updated>2014-12-22T20:26:46Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-12-22T20:26:45Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=7665d9c3a63a026ab4d83411fc699b82ab310b3c'/>
<id>urn:sha1:7665d9c3a63a026ab4d83411fc699b82ab310b3c</id>
<content type='text'>
Avoid compilation warnings on recent gcc toolchain on Cygwin.

* rj/no-xopen-source-for-cygwin:
  git-compat-util.h: don't define _XOPEN_SOURCE on cygwin
</content>
</entry>
<entry>
<title>git-compat-util: suppress unavoidable Apple-specific deprecation warnings</title>
<updated>2014-12-18T19:01:30Z</updated>
<author>
<name>Eric Sunshine</name>
<email>sunshine@sunshineco.com</email>
</author>
<published>2014-12-16T23:19:36Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=b195aa00c17ea38d3f1c9125c37348645ea58f7c'/>
<id>urn:sha1:b195aa00c17ea38d3f1c9125c37348645ea58f7c</id>
<content type='text'>
With the release of Mac OS X 10.7 in July 2011, Apple deprecated all
openssl.h functionality due to OpenSSL ABI (application binary
interface) instability, resulting in an explosion of compilation
warnings about deprecated SSL, SHA1, and X509 functions (among others).

61067954ce (cache.h: eliminate SHA-1 deprecation warnings on Mac OS X;
2013-05-19) and be4c828b76 (imap-send: eliminate HMAC deprecation
warnings on Mac OS X; 2013-05-19) attempted to ameliorate the situation
by taking advantage of drop-in replacement functionality provided by
Apple's (ABI-stable) CommonCrypto facility, however CommonCrypto
supplies only a subset of deprecated OpenSSL functionality, thus a host
of warnings remain.

Despite this shortcoming, it was hoped that Apple would ultimately
provide CommonCrypto replacements for all deprecated OpenSSL
functionality, and that the effort started by 61067954ce and be4c828b76
would be continued and eventually eliminate all deprecation warnings.
However, now 3.5 years later, and with Mac OS X at 10.10, the hoped-for
CommonCrypto replacements have not yet materialized, nor is there any
indication that they will be forthcoming.

These Apple-specific warnings are pure noise: they don't tell us
anything useful and we have no control over them, nor is Apple likely to
provide replacements any time soon. Such noise may obscure other
legitimate warnings, therefore silence them.

Signed-off-by: Eric Sunshine &lt;sunshine@sunshineco.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>compat: convert modes to use portable file type values</title>
<updated>2014-12-04T19:58:36Z</updated>
<author>
<name>David Michael</name>
<email>fedora.dm0@gmail.com</email>
</author>
<published>2014-12-04T02:24:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=d543d9c0f44a89f30ec1670f16c698b5da801476'/>
<id>urn:sha1:d543d9c0f44a89f30ec1670f16c698b5da801476</id>
<content type='text'>
This adds simple wrapper functions around calls to stat(), fstat(),
and lstat() that translate the operating system's native file type
bits to those used by most operating systems.  It also rewrites the
S_IF* macros to the common values, so all file type processing is
performed using the translated modes.  This makes projects portable
across operating systems that use different file type definitions.

Only the file type bits may be affected by these compatibility
functions; the file permission bits are assumed to be 07777 and are
passed through unchanged.

Signed-off-by: David Michael &lt;fedora.dm0@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>git-compat-util.h: don't define _XOPEN_SOURCE on cygwin</title>
<updated>2014-11-25T00:02:38Z</updated>
<author>
<name>Ramsay Jones</name>
<email>ramsay@ramsay1.demon.co.uk</email>
</author>
<published>2014-11-23T17:14:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=3a0a3a8972369060a1eff8353b64bf7377714b22'/>
<id>urn:sha1:3a0a3a8972369060a1eff8353b64bf7377714b22</id>
<content type='text'>
A recent update to the gcc compiler (v4.8.3-5 x86_64) on 64-bit
cygwin leads to several new warnings about the implicit declaration
of the memmem(), strlcpy() and strcasestr() functions. For example:

  CC archive.o
  archive.c: In function 'format_subst':
  archive.c:44:3: warning: implicit declaration of function 'memmem' \
    [-Wimplicit-function-declaration]
     b = memmem(src, len, "$Format:", 8);
       ^
  archive.c:44:5: warning: assignment makes pointer from integer \
    without a cast [enabled by default]
     b = memmem(src, len, "$Format:", 8);
       ^

This is because &lt;string.h&gt; on Cygwin used to always declare the
above functions, but a recent version of it no longer make them
visible when _XOPEN_SOURCE is set (even if _GNU_SOURCE and
_BSD_SOURCE is set).

In order to suppress the warnings, don't define the _XOPEN_SOURCE
macro on cygwin.

Signed-off-by: Ramsay Jones &lt;ramsay@ramsay1.demon.co.uk&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
