{"thread":{"id":"30330","subject":"[gitk] No commit diff when 'safecrlf' set to true is causing an error","startedAt":"2012-04-24T23:32:59Z","lastAt":"2012-04-24T23:32:59Z","messageCount":1,"participants":["Illia Bobyr"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"190038","messageId":"B1416C005AC3CA488CB124F971A297500D0824@IRVEX008.corp.blizzard.net","threadId":"30330","inReplyTo":null,"subject":"[gitk] No commit diff when 'safecrlf' set to true is causing an error","fromName":"Illia Bobyr","fromEmail":"ibobyr@blizzard.com","sentAt":"2012-04-24T23:32:59Z","receivedAt":"2012-04-24T23:32:59Z","isPatch":false,"sender":{"key":"ibobyr@blizzard.com","avatar":null},"body":"Hi,\n\nThe idea of my complain is that if a patch may not be shown because diff-tree returns an error, that error should be visible to the user.\nRight now it is silently ignored.\n\nI hit this when I was changing between profiles with different safecrlf/autocrlf settings and some commits would not show any diffs any more in gitk.  Without any errors.\n\nHere is a test case:\n\nmkdir gitk-silent-error-test\ncd gitk-silent-error-test\n\ngit init .\n\ngit config core.autocrlf false\ngit config core.safecrlf false\n\necho hello > test\ngit add test\ngit commit -m 1\n\necho there >> test\ngit add test\ngit commit -m 2\n\ngitk\n\nIn the gitk window I now see both commits along with the commit messages, but do not see the patch for the second commit.\nAnd as a user I do not really understand why at this point there are no error messages.\n\nI was able to figure out that it is the git diff-tree command that gitk is using who is complaining.\nIt seems a little unintuitive that error in the file format in my working directory affects what gitk is showing.\n\nI think that gitk should have provided a --no-check argument to diff-tree if there would be one.  But there is none.\nAnd I might be wrong about the best solution.\n\nThank you,\nIlya Bobyr\n"}]}