New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
1.9 Error #4
Comments
This came up at [ruby-core:38466]. It's better called an escaping issue than an encoding issue. When moving from 1.8 to 1.9, the escaping in String#inspect was changed from octal (\000 for a null byte) to hexadecimal (\x00). This was done because these days, the average programmer is more familiar with hexadecimal than with octal notation (except for file permissions). In string literals, Ruby was always able to handle hexadecimal byte escapes. But it seems gash is using a hand-coded unescaping routine (better than using eval I guess, both for speed and for security), and that doesn't know hexadecimal escapes (which results in an "input format error"). Should not be too difficult to fix. |
This is because Array#to_s's change. So it seems to need following changes:
|
@nurse: click the edit button, and add 4 spaces at every beginning of lines. |
@shouhei: Oops, I did it, thanks |
I believe this is fixed now. Cane we get a new release? |
I think I may have figured out what cases the problem under 1.9.x. Though a solution I have not yet figured out.
Running under 1.8.7 run_git gets:
Running under 1.9.2 it is:
Since the error is "fatal: input format error" I suspect the problem is the difference between \x00 and \000 --an encoding issue.
Not that's all well and good, but despite over an hour of trying to figure out how to fix it I have had no success.
The text was updated successfully, but these errors were encountered: