- From: Stefan Nusser <nusser@dec6.wu-wien.ac.at>
- Date: Wed, 25 Sep 96 10:34:14 MET
- To: libwww@w3.org
- Cc: neumann@nestroy.wi-inf.uni-essen.de (Gustaf Neumann), www-lib@w3.org
Hi Henrik, I think there is a small bug in the 4.1b5 version of libwww, which causes empty net objects to be queued in a host's pipeline if HTTP/1.0 is used. Consequently, the library might hang if further requests for the same host are issued. The included patch should fix the problem and produce the desired behaviour. I also think that HTTP/1.0 performance is worse now. This is due to the new pipelining mechanism, which causes all requests for the SAME host to be queued and issued consecutively. If HTTP/1.0 is used, new requests to the same host should be issued in parallel as long as free sockeets are available. I will make the necessary modifications - if you are already working on this, PLEASE LET ME KNOW. Finally, there is a last modification of the HTDialog Class, I would like to propose. It would be great if the mapping of HTTP error codes to English error messages could be made available to the application as public functions. A patch with the necessary functions is included as well. Greetings from Vienna, -stefan [spike:nusser src]$ diff -c HTHost.c HTHost.c.orig *** HTHost.c Wed Sep 25 10:41:48 1996 --- HTHost.c.orig Wed Sep 25 10:41:28 1996 *************** *** 541,552 **** HTNet * net = NULL; if (host && host->pending && host->pipeline) { if ((net = (HTNet *) HTList_removeFirstObject(host->pending)) != NULL) - { if (PROT_TRACE) HTTrace("Host info... Popping %p from pending net queue\n", net); HTList_addObject(host->pipeline, net); - } } return net; } --- 541,550 ---- [spike:nusser src]$ diff -c HTDialog.c HTDialog.c.orig *** HTDialog.c Wed Sep 25 10:53:23 1996 --- HTDialog.c.orig Wed Sep 25 10:53:15 1996 *************** *** 452,472 **** } return YES; } - - PUBLIC char * HTError_message (int index) - { - if (index >= 0 && index < HTERR_ELEMENTS) - return HTErrors[index].msg; - else - return "INVALID USAGE"; - } - - PUBLIC int HTError_code (int index) - { - if (index >= 0 && index < HTERR_ELEMENTS) - return HTErrors[index].code; - else - return -1; - } - - --- 452,454 ---- -- Stefan Nusser nusser@wu-wien.ac.at Vienna University of Economics and Business Administration Department of Management Information Systems Augasse 2-6, A-1090 Vienna, Austria Tel: +43 (222) 31 336 x4419 Fax: x746
Received on Wednesday, 25 September 1996 05:00:58 UTC