git-commit-vandalism/perl/Git
Gavin Lambert a2c761ce5b git-svn: do not reuse caches memoized for a different architecture
Reusing cached data speeds up git-svn by quite a fair bit. However, if
the YAML module is unavailable, the caches are written to disk in an
architecture-dependent manner. That leads to problems when upgrading,
say, from 32-bit to 64-bit Git for Windows.

Let's just try to read those caches back if we detect the absence of the
YAML module and the presence of the file, and delete the file if it
could not be read back correctly.

Note that the only way to catch the error when the memoized cache could
not be read back is to put the call inside an `eval { ... }` block
because it would die otherwise; the `eval` block should also return `1`
in case of success explicitly since the function reading back the cached
data does not return an appropriate value to test for success.

This fixes https://github.com/git-for-windows/git/issues/233.

[ew: import "retrieve" explictly, check unlink result]

Signed-off-by: Gavin Lambert <github@mirality.co.nz>
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Signed-off-by: Eric Wong <e@80x24.org>
2016-10-27 20:17:36 +00:00
..
SVN git-svn: shorten glob error message 2016-03-15 01:35:39 +00:00
I18N.pm Correct common spelling mistakes in comments and tests 2013-04-12 13:38:40 -07:00
IndexInfo.pm Move Git::IndexInfo into its own file. 2012-07-27 22:36:17 +00:00
SVN.pm git-svn: do not reuse caches memoized for a different architecture 2016-10-27 20:17:36 +00:00