I was recently alerted to a problem with file uploading when the filename contained non-ASCII characters. What appears to happen is NetSurf converts the filename given by the frontend to UTF-8, and then when the POST is done by Curl it tries to open the file using the UTF-8 name.
When the OS uses a filesystem which stores filenames in UTF-8 this is not a problem. However, when it stores them in a local character set the conversion means Curl can't open the file and an error occurs rather than the file being uploaded. This happens on OS4 and I suspect some of our other targets too. The branch chris/non-ascii-file-upload is my attempt at fixing this. I've added a new item to the form structure to hold the original filename given to NetSurf by the OS, and this is then passed to Curl instead of the UTF-8 version (the UTF-8 version is still there for the display). I'm not sure if this is the best way of handling it, and my build environment is screwed up so I can't actually test it at the moment, so any comments welcomed. Chris
