From: Josh J. <jj...@gm...> - 2012-08-09 01:50:52
|
Hi, I've bisected a crash in one of my programs running in SheepShaver to this commit: commit efa32be9ec44956c77e5001e31bebce151cb2ad6 Author: gbeauche <> Date: Sat Jul 21 10:25:51 2007 +0000 Optimize invalidate_cache_range() for short ranges. I applied 7bb230ab "apparently this makes newest SDL happy" to each checkout I tested to get SheepShaver to run at all. This is in Mac OS X 10.4 "Tiger" for Intel. The issue occurs only rarely, with regard to what triggers it, but it's 100% reproducible. To reproduce: * Launch MacRelix * Run `git --version` * cd into a Git repo (I only tried my metamage repo) * Run `time git status` with git v1.7.6 One of three failure modes occurs: * SheepShaver exits immediately * The guest OS hangs and SheepShaver consumes maximum CPU * The command completes with garbled output, having failed to recognize its input $ time /git status 10-102.964309e-3152200othing added. 0x1.0002400000000p-1023ybe you wanted to say 'git add .'? real 0.07 user 0.00 sys 0.07 No failure occurs with any of the following: * Don't run `git --version` first * Run `git status` without `time` * Use git v1.7.5 instead of v1.7.6 * Use a git binary built with symbolics (i.e. enabled to run in the Metrowerks debugger) * Run in Classic instead of SheepShaver * Use a SheepShaver built with the optimization reverted If I cd before running `git --version`, the error message is displayed ungarbled (which is still wrong, since the repo isn't empty). If I use an optimized build instead, I get a different error: fatal: bad config value for 'core.repositoryformatversion' in .git/ config Since efa32be9e is at best an optimization and demonstrably causes problems, I suggest it be reverted immediately. Josh |