diff options
author | 2013-05-02 19:04:55 -0400 | |
---|---|---|
committer | 2013-05-02 19:04:55 -0400 | |
commit | c636de345331026a18ff33aa09bbc642029e51a8 (patch) | |
tree | 5ef59844711bb90a12f4f3eaec987b505386b4c5 /doc/design/assistant/blog/day_253__OMG.mdwn | |
parent | b48554b021efe79ef7029c7a66aab1063e71ac47 (diff) |
blog for the day
Diffstat (limited to 'doc/design/assistant/blog/day_253__OMG.mdwn')
-rw-r--r-- | doc/design/assistant/blog/day_253__OMG.mdwn | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/doc/design/assistant/blog/day_253__OMG.mdwn b/doc/design/assistant/blog/day_253__OMG.mdwn new file mode 100644 index 000000000..b79fb8144 --- /dev/null +++ b/doc/design/assistant/blog/day_253__OMG.mdwn @@ -0,0 +1,22 @@ +[[!img /assistant/android/webapp.png alt="git-annex webapp on Android"]] + +I fixed what I thought was keeping the webapp from working on Android, but +then it started segfaulting every time it was started. Eventually I +determined this segfault happened whenever haskell code called +`getaddrinfo`. I don't know why. This is particularly weird since I had +a demo web server that used `getaddrinfo` working way back in +[[day_201__real_Android_wrapup]]. Anyway, I worked around it by not using +`getaddrinfo` on Android. + +Then I spent 3 hours stuck, because the webapp seemed to run, but +nothing could connect to the port it was on. Was it a firewall? Was +the Haskell threaded runtime's use of `accept()` broken? I went all the way +down to the raw system calls, and back, only to finally notice I had `netstat` +available on my Android. Which showed it was not listening to the port I +thought it was! + +Seems that `ntohs` and `htons` are broken somehow. To get the +screenshot, I fixed up the port manually. Have a build running that +should work around the issue. + +Anyway, the webapp works on Android! |