On Sat, Mar 29, 2008 at 04:25:42AM +0000, place wrote:
1. I happened to run into a preexisting bug in a_Url_cmp().
I hooked up the dialog code as the others had done for https, and the first URL I tried was a redirect that goes http://something -> https://something. The urls are identical except for the scheme. It broke because a_Url_cmp() has
(st = URL_STR_FIELD_I_CMP(A->scheme, B->scheme) == 0))) instead of (st = URL_STR_FIELD_I_CMP(A->scheme, B->scheme)) == 0))
Committed.
2. The mail I tried to send some days back from my new account(*) also happened to be about a_Url_cmp(). When I was playing with file inputs, I generated the URL file:///something, with file:/something already in cache. Cache did not find it because the authority of one was NULL and the authority of the other was "". URL_STR_FIELD_I_CMP thinks those are different things. Which is possible. Knowing how weird the URL spec gets, the code might reflect a genuine difference, but sounds more like an error.
Yes, current URL handling follows the spec. The problem is that the rest of dillo is using URLs like file:/something freely, when they should be file:///something. It should be easy to switch the file server dpi to generate "file:///"-prefixed URLS, and the input location to also normalize file:/ prefixed ones. But, if they appear in an external html page, it may be better to make the URL code normalize it (or check what other browsers do).
That I should run into these two issues at the very same time that I'm trying to change a_Url_cmp() for url->data is a strange coincidence.
Peer reviewing is always an asset.
* And it receives list mail just fine. Andreas seemed to think that as long as I'm subscribed, I shouldn't have any moderation problems. Strange. Out of my control, anyway.
I gave a look at the list settings. Please let me know your new email address to find whether I can do something to enable it. BTW, with the new patch for "missing widgets", when I first went to http://lists.auriga.wearlab.de/cgi-bin/mailman/admin/dillo-dev the Password input widget was missing! (it worked the next tries). -- Cheers Jorge.-