41 lines
2 KiB
Text
41 lines
2 KiB
Text
[[!comment format=mdwn
|
|
username="http://joeyh.name/"
|
|
ip="4.152.246.110"
|
|
subject="comment 13"
|
|
date="2013-07-27T20:46:01Z"
|
|
content="""
|
|
I've verified that the (old) code correctly returned no path when it's too long:
|
|
|
|
<pre>
|
|
*Annex.Ssh System.Directory System.Posix.Directory Annex Git.Construct Git.Config System.Posix.Env Utility.Env> eval (newState r') $ changeGitConfig (\c -> c { annexCrippledFileSystem = True }) >> sshInfo (\"fozz@git-annex-markdown.lang.speechmarks.com-fozz_phone.2Dannex.IdWwlXHtSsjVUMcq\", Nothing)
|
|
(Nothing,[])
|
|
</pre>
|
|
|
|
In case the problem was somehow related to calculating the length on Android (ie, Data.Bits.Utils broken), I built a small program that calculated the length of the string the same way
|
|
|
|
[[!format haskell \"\"\"
|
|
import Utility.FileSystemEncoding
|
|
|
|
main = do
|
|
let s = \"/data/data/ga.androidterm/tmp/fozz@git-annex-markdown.lang.speechmarks.com-fozz_phone.2Dannex.IdWwlXHtSsjVUMcq\"
|
|
let ws = decodeW8 s
|
|
print (length ws)
|
|
\"\"\"]]
|
|
|
|
Outputs 110 on Android as expected.
|
|
|
|
Finally, using git-annex 4.20130721-g002de3e on Android (a newer version than the bug reporter's but with no changes to Annex.Ssh), I manually set up a repository using the same hostname:
|
|
|
|
<pre>
|
|
[remote \"foo\"]
|
|
url = ssh://fozz@git-annex-markdown.lang.speechmarks.com-fozz_phone.2Dannex.IdWwlXHtSsjVUMcq
|
|
fetch = +refs/heads/*:refs/remotes/foo/*
|
|
annex-uuid = dummy
|
|
</pre>
|
|
|
|
And still cannot replicate the bug; as expected it does not use the socket since it's too long:
|
|
|
|
copy foo (checking foo...) [2013-07-27 16:40:42 EDT] call: ssh [\"-T\",\"fozz@git-annex-markdown.lang.speechmarks.com-fozz_phone.2Dannex.IdWwlXHtSsjVUMcq\",\"git-annex-shell 'inannex' '' 'SHA256E-s29--093429efb0d1427753d1f038f5279ec4df66785a1b2429b3fa5e3a01bcb75bd8' --uuid 111\"]
|
|
|
|
So, I don't understand how this could have happened. Although my recent changes mean it'll use a 62 byte path max on Android now, which certianly should avoid the problem, even if there's some actual bug here that I cannot reproduce.
|
|
"""]]
|