On Thu, 31 Jul 2008 00:01:25 +0100, Rob Kendrick wrote:
On 30 Jul 2008 23:44:20 +0100
"Chris Young" <chris.young(a)unsatisfactorysoftware.co.uk> wrote:
> I now have lots of work to do writing native code, currently it opens
> a window, fetches a page and sets the window's title - and then sits
> in an endless loop doing nothing, as that's as far as I got.
If you want a Subversion account to check your current work in, please
ask. Checking in often and early is worthwhile; especially given we've
made quite large changes to the Make system recently.
Yes please - that will be very useful. I'm working with an SVN
snapshot at the moment and I can see it getting further and further
behind.
> btw, file: URLs seem to be adding a slash to the beginning of
the
> path, no matter how I specify them. This is very annoying, as a slash
> at the start of a path indicates the parent of the current directory.
Ah, that may be a bad assumption on my part. All the /sensible/ OSes
treat multiple contiguous slashes as a single one. :)
But then you miss out on the fun of ram:t//clipboards/0 etc ;)
I also don't see why this wasn't a problem for RISC OS, last time I
checked a slash was a valid filename character rather than a path
separator, so I would expect it to complain profusely if this was
present at the start of a fully-qualified path.
You'll want to examine the content of
content/fetchers/fetch_data.c
I can't see anything relevant in there. There is some code in
fetch_curl.c which handles the filetypes:
if (strncmp(f->url, "file:///", 8) == 0)
url_path = curl_unescape(f->url + 7,
(int) strlen(f->url) - 7);
Changing the two 7s to 8s here appears to send the correct path to
the local MIME type routine.
I assume exactly the same code is elsewhere but I can't find it.
I'm told that file:/// is correct (and there is certainly code
elsewhere which converts file:// to file:///), but path_to_url in
urldb.c only adds two?
I think I probably need an #ifdef in the code which picks out the path
from the URL, so it starts at the eighth character instead of the
seventh. Maybe this can be a global variable or defined in
utils/config.h, as I can see it being a problem for other platforms as
well (eg. Windows).
Chris