<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/perl, branch v1.8.2.2</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=v1.8.2.2</id>
<link rel='self' href='https://git.shady.money/git/atom?h=v1.8.2.2'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2013-04-22T18:26:55Z</updated>
<entry>
<title>Merge branch 'tr/perl-keep-stderr-open' into maint</title>
<updated>2013-04-22T18:26:55Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-04-22T18:26:55Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2483fba54e9a870e110448cd463c10684d45ed36'/>
<id>urn:sha1:2483fba54e9a870e110448cd463c10684d45ed36</id>
<content type='text'>
* tr/perl-keep-stderr-open:
  t9700: do not close STDERR
  perl: redirect stderr to /dev/null instead of closing
</content>
</entry>
<entry>
<title>Correct common spelling mistakes in comments and tests</title>
<updated>2013-04-12T20:38:40Z</updated>
<author>
<name>Stefano Lattarini</name>
<email>stefano.lattarini@gmail.com</email>
</author>
<published>2013-04-11T22:36:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=41ccfdd9c931ee71b09f38f4eb19cf44a8e4381d'/>
<id>urn:sha1:41ccfdd9c931ee71b09f38f4eb19cf44a8e4381d</id>
<content type='text'>
Most of these were found using Lucas De Marchi's codespell tool.

Signed-off-by: Stefano Lattarini &lt;stefano.lattarini@gmail.com&gt;
Signed-off-by: Jonathan Nieder &lt;jrnieder@gmail.com&gt;
Acked-by: Matthieu Moy &lt;Matthieu.Moy@imag.fr&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Typo fix: replacing it's -&gt; its</title>
<updated>2013-04-12T00:39:05Z</updated>
<author>
<name>Benoit Bourbie</name>
<email>bbourbie@slb.com</email>
</author>
<published>2013-04-13T16:47:21Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=3a51467b94306e77c1b69b374bac33b6672bc177'/>
<id>urn:sha1:3a51467b94306e77c1b69b374bac33b6672bc177</id>
<content type='text'>
Signed-off-by: Benoit Bourbie &lt;benoit.bourbie@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>perl: redirect stderr to /dev/null instead of closing</title>
<updated>2013-04-04T21:49:39Z</updated>
<author>
<name>Thomas Rast</name>
<email>trast@inf.ethz.ch</email>
</author>
<published>2013-04-04T20:41:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=bd4ca09d4cddc226ece1bb5b40a74ba281f3e00e'/>
<id>urn:sha1:bd4ca09d4cddc226ece1bb5b40a74ba281f3e00e</id>
<content type='text'>
On my system, t9100.1 triggers the following warning:

  ==352== Syscall param write(buf) points to uninitialised byte(s)
  ==352==    at 0x57119C0: __write_nocancel (in /lib64/libc-2.17.so)
  ==352==    by 0x56AC1D2: _IO_file_write@@GLIBC_2.2.5 (in /lib64/libc-2.17.so)
  ==352==    by 0x56AC0B1: new_do_write (in /lib64/libc-2.17.so)
  ==352==    by 0x56AD3B4: _IO_do_write@@GLIBC_2.2.5 (in /lib64/libc-2.17.so)
  ==352==    by 0x56AD6FE: _IO_file_overflow@@GLIBC_2.2.5 (in /lib64/libc-2.17.so)
  ==352==    by 0x56AE3D8: _IO_default_xsputn (in /lib64/libc-2.17.so)
  ==352==    by 0x56ACAA2: _IO_file_xsputn@@GLIBC_2.2.5 (in /lib64/libc-2.17.so)
  ==352==    by 0x5682133: buffered_vfprintf (in /lib64/libc-2.17.so)
  ==352==    by 0x567CE9D: vfprintf (in /lib64/libc-2.17.so)
  ==352==    by 0x5687096: fprintf (in /lib64/libc-2.17.so)
  ==352==    by 0x4E7AC5: vreportf (usage.c:15)
  ==352==    by 0x4E7B14: die_builtin (usage.c:38)

The actual complaint appears to be a bug in the underlying
implementation.  What's interesting here is that it is apparently
_triggered_ by closing stderr, which results in (from strace)

  write(2, "fatal: Needed a single revision\n", 32) = -1 EBADF (Bad file descriptor)
  write(2, "\0", 1) = -1 EBADF (Bad file descriptor)

Closing stderr is a bad idea anyway: there is a very real chance that
we print fatal error messages to some other file that just happens to
be opened on the now-free FD 2.  So let's not do that.

As pointed out by Eric Wong (thanks), the initial close needs to go:
die() would again write nowhere if we close STDERR beforehand.

Signed-off-by: Thomas Rast &lt;trast@inf.ethz.ch&gt;
Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jc/perl-cat-blob' into maint</title>
<updated>2013-03-26T19:42:24Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-03-26T19:42:24Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=06d7abb13c1a948f376f05bbd708712c512e6e1b'/>
<id>urn:sha1:06d7abb13c1a948f376f05bbd708712c512e6e1b</id>
<content type='text'>
perl/Git.pm::cat_blob slurped everything in core only to write it
out to a file descriptor, which was not a very smart thing to do.

* jc/perl-cat-blob:
  Git.pm: fix cat_blob crashes on large files
</content>
</entry>
<entry>
<title>git svn: consistent spacing after "W:" in warnings</title>
<updated>2013-03-08T09:53:57Z</updated>
<author>
<name>Eric Wong</name>
<email>normalperson@yhbt.net</email>
</author>
<published>2013-03-08T09:46:41Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=eae6cf5aa8ae2d8a90a99bbe4aeb01c29e01fd02'/>
<id>urn:sha1:eae6cf5aa8ae2d8a90a99bbe4aeb01c29e01fd02</id>
<content type='text'>
All other instances of "W:"-prefixed warning messages have a space after
the "W:" to help with readability.

Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
</content>
</entry>
<entry>
<title>git svn: ignore partial svn:mergeinfo</title>
<updated>2013-03-08T09:46:03Z</updated>
<author>
<name>Jan Pešta</name>
<email>jan.pesta@certicon.cz</email>
</author>
<published>2013-03-07T11:28:14Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=47543d161ebe550c412d99aaa6b9e7e5ae88fab5'/>
<id>urn:sha1:47543d161ebe550c412d99aaa6b9e7e5ae88fab5</id>
<content type='text'>
Currently this is cosmetic change - the merges are ignored, becuase the methods
(lookup_svn_merge, find_rev_before, find_rev_after) are failing on comparing text with number.

See http://www.open.collab.net/community/subversion/articles/merge-info.html
Extract:
The range r30430:30435 that was added to 1.5.x in this merge has a '*' suffix for 1.5.x\www.
This '*' is the marker for a non-inheritable mergeinfo range.
The '*' means that only the path on which the mergeinfo is explicitly set has had this range merged into it.

Signed-off-by: Jan Pesta &lt;jan.pesta@certicon.cz&gt;
Signed-off-by: Eric Wong &lt;normalperson@yhbt.net&gt;
</content>
</entry>
<entry>
<title>Git.pm: fix cat_blob crashes on large files</title>
<updated>2013-02-22T21:18:22Z</updated>
<author>
<name>Joshua Clayton</name>
<email>stillcompiling@gmail.com</email>
</author>
<published>2013-02-22T21:01:18Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=712c6adaeece262121c185a55e83a5074e2a8ea6'/>
<id>urn:sha1:712c6adaeece262121c185a55e83a5074e2a8ea6</id>
<content type='text'>
Read and write each 1024 byte buffer, rather than trying to buffer
the entire content of the file.  We are only copying the contents to
a file descriptor and do not use it ourselves.

Previous code would crash on all files &gt; 2 Gib, when the offset
variable became negative (perhaps below the level of perl),
resulting in a crash.  On a 32 bit system, or a system with low
memory it might crash before reaching 2 GiB due to memory
exhaustion.

This code may leave a partial file behind in case of failure, where
the old code would leave a completely empty file.  Neither version
verifies the correctness of the content.  Calling code must take
care of verification and cleanup.

Signed-off-by: Joshua Clayton &lt;stillcompiling@gmail.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>Merge branch 'bw/get-tz-offset-perl'</title>
<updated>2013-02-14T18:29:44Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-02-14T18:29:44Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=01e1406100cff1cc9d1ad2f0c766aaa8c55ebc27'/>
<id>urn:sha1:01e1406100cff1cc9d1ad2f0c766aaa8c55ebc27</id>
<content type='text'>
* bw/get-tz-offset-perl:
  cvsimport: format commit timestamp ourselves without using strftime
  perl/Git.pm: fix get_tz_offset to properly handle DST boundary cases
  Move Git::SVN::get_tz to Git::get_tz_offset
</content>
</entry>
<entry>
<title>perl/Git.pm: fix get_tz_offset to properly handle DST boundary cases</title>
<updated>2013-02-09T22:34:18Z</updated>
<author>
<name>Ben Walton</name>
<email>bdwalton@gmail.com</email>
</author>
<published>2013-02-09T21:46:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=75f7b5dfc47a9c764207559934b1c550423a243a'/>
<id>urn:sha1:75f7b5dfc47a9c764207559934b1c550423a243a</id>
<content type='text'>
When passed a local time that was on the boundary of a DST change,
get_tz_offset returned a GMT offset that was incorrect (off by one
hour).  This is because the time was converted to GMT and then back to
a time stamp via timelocal() which cannot disambiguate boundary cases
as noted in its documentation.

Modify this algorithm, using an approach suggested in

  http://article.gmane.org/gmane.comp.version-control.git/213871

to first convert the timestamp in question to two broken down forms
with localtime() and gmtime(), and then compute what timestamps
these two broken down forms would represent in GMT (i.e. a timezone
that does not have DST issues) by applying timegm() on them.  The
difference between the resulting timestamps is the timezone offset.

This avoids the ambigious conversion and allows a correct time to be
returned on every occassion.

Signed-off-by: Ben Walton &lt;bdwalton@gmail.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
