+2003-10-10 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * recur.c (retrieve_tree): Don't descend into documents that are
+ not expected to contain HTML, regardless of their content-type.
+
+ * html-url.c (tag_url_attributes): Record which attributes are
+ supposed to yield HTML links that can be followed.
+ (tag_find_urls): Propagate that information to the caller through
+ struct urlpos.
+
+2003-10-10 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * hash.c (find_mapping): Return the next available mapping when
+ the key is not found, not NULL.
+ (hash_table_put): Use find_mapping to find the storage for the new
+ data.
+ (hash_table_put): Grow the table before exceeding maximum
+ fullness, not afterwards.
+
+2003-10-10 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * hash.c (hash_table_new): Slightly change the meaning of the
+ first parameter. Instead of being the minimum initial size, it is
+ now the minimum number of items that the hash table can take
+ without needing to resize.
+
+2003-10-09 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * html-url.c (init_interesting): Initialize interesting_tags and
+ interesting_attributes as hash tables. This simplifies the code
+ immensely because hash tables handle allocation and remove
+ duplicates automatically.
+ (find_tag): Removed.
+ (collect_tags_mapper): Instead of calling find_tag, simply get the
+ entry from interesting_tags hash table, which is both simpler and
+ faster.
+
+2003-10-09 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * hash.c (hash_table_get): Declare hash-table argument as const.
+ (find_mapping): Ditto.
+ (hash_table_get_pair): Ditto.
+ (hash_table_contains): Ditto.
+ (hash_table_count): Ditto.
+
+2003-10-08 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * html-url.c (get_urls_html): Parse the appropriate flags to
+ html-parse.c.
+
+ * html-parse.c (map_html_tags): Accept FLAGS from the caller
+ instead of examining OPT.
+
+2003-10-08 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * html-url.c (find_tag): Switch to binary search.
+
+2003-10-08 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * main.c (print_help): Fix typo; stured -> stored.
+
+2003-10-08 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * getopt.c: Add definitions of getopt_long and getopt_long_only.
+
+2003-10-08 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * config.h.in: Renamed DEBUG to ENABLE_DEBUG. ENABLE_DEBUG is, I
+ think, a better name, because it implies that debugging output is
+ merely possible, not "on by default", as might be construed from
+ just DEBUG.
+
+2003-10-08 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * ftp.c (has_insecure_name_p): Define it here.
+
+ * utils.c (has_wildcards_p): Define it here.
+
+ * sysdep.h: Declare fnmatch-related macros here, if not using
+ system fnmatch(). Update .c files to not declare fnmatch.h
+ directly.
+
+ * cmpt.c (fnmatch): Moved here. Use it only under non-GNU libc.
+
+2003-10-08 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * getopt.c: Newer version, imported from Free libit.
+
+2003-10-07 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * cookies.c (struct cookie): Remove unused backpointer to cookie
+ jar.
+
+2003-10-07 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * cmpt.c (memmove): Comment out, since it's no longer used.
+
+ * cookies.c (cookie_jar_generate_cookie_header): Allocate room for
+ chains in one pass.
+ (find_chains_of_host): Assume that the caller has allocated DEST
+ to be sufficiently large to take all the data.
+ (eliminate_dups): Run through the array and eliminate dups on the
+ fly instead of using memmove.
+ (cookie_jar_process_set_cookie): Free cookie->domain before
+ re-setting it.
+
+2003-10-05 Gisle Vanem <giva@bgnett.no>
+
+ * mswindows.c (set_sleep_mode): Fix type of
+ _SetThreadExecutionState.
+
+2003-10-05 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * utils.c (file_size): Return -1 if fopen() returns NULL. Prior
+ to this patch, wget --post-file=nosuchfile dumped core.
+
+2003-10-04 Gisle Vanem <giva@bgnett.no>
+
+ * mswindows.c (run_with_timeout): Use WaitForSingleObject to wait
+ for thread termination.
+
+2003-10-04 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * log.c: Use `...' in function definitions; ansi2knr will convert
+ them to va_dcl. This allowed removal of the ugly VA_START_1 and
+ VA_START_2 macros.
+
+2003-10-03 Gisle Vanem <giva@bgnett.no>
+
+ * connect.c: And don't include them here.
+
+ * mswindows.h: Include winsock headers here.
+
+2003-10-03 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * html-parse.c (convert_and_copy): Move variable declarations
+ before statements.
+
+2003-10-02 Gisle Vanem <giva@bgnett.no>
+
+ * mswindows.c (run_with_timeout): For Windows: Run the 'fun' in a
+ thread via a helper function. Continually query the thread's
+ exit-code until finished or timed out.
+
+2003-10-02 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * wget.h (XMALLOC_ARRAY): Removed.
+ (ALLOCA_ARRAY): Ditto.
+
+ * html-parse.c: Renamed alloca_p to resized.
+ (GROW_ARRAY): Renamed DO_REALLOC_FROM_ALLOCA to GROW_ARRAY and
+ returned it to html-parse.c, since nothing else was using it.
+
+2003-10-02 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * retr.c (retrieve_url): Initialize DUMMY storage for DT. Caught
+ by valgrind.
+
+2003-10-02 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * html-parse.c (convert_and_copy): Handle numeric entities in
+ hexadecimal, &#xHH.
+ (convert_and_copy): Copy the contents directly to the pool without
+ a stack-allocated intermediary.
+
+2003-10-02 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * utils.c (alarm_set): New function; use either setitimer or alarm
+ to set up the alarm.
+ (alarm_cancel): New function; cancel the alarm set up by
+ alarm_set.
+ (run_with_timeout): Use them.
+
+2003-10-01 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * url.c (url_parse): Don't leak memory when a reencoded URL turns
+ out to be invalid.
+
+ * url.c (parse_errors): Mark error messages for translation.
+ (url_error): Translate error messages returned to the caller.
+
+2003-10-01 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * ftp.c (ftp_loop_internal): Initialize TMRATE to NULL to shut up
+ the compiler.
+
+2003-09-26 Gisle Vanem <giva@bgnett.no>
+
+ * src/mswindows.c: Added ws_percenttitle() showing progress in the
+ window titlebar. Called from retr.c. Secured ws_mypath().
+
+ * windows/config.h.ms: alloca() prototype not needed. Removed
+ "#undef ENABLE_NLS"; should be in Makefile IMHO. Moved
+ WGET_USE_STDARG from mswindows.h to config.ms.h because of #ifdef
+ in log.c. (MSVC's vararg.h and stdarg.h are incompatible).
+
+2003-09-29 Aaron Hawley <Aaron.Hawley@uvm.edu>
+
+ * ftp.c (getftp): --spider option should now work with FTP
+ downloads.
+ (ftp_loop_internal): quiet reports and calculations of downloads
+ when --spider option set, nor try deleting when --delete-after
+ also set.
+ (ftp_loop): --spider will skip HTML-ification of .listing file.
+
+2003-09-26 Gisle Vanem <giva@bgnett.no>
+
+ * mswindows.c (read_registry): Removed.
+ (set_sleep_mode): New function.
+ (windows_main_junk): Call it.
+
+2003-09-26 Gisle Vanem <giva@bgnett.no>
+
+ * mswindows.c (read_registry): Fix invocation of registry
+ functions.
+
+ * mswindows.c (read_registry): Condition definitions of sleep and
+ usleep with not HAVE_SLEEP and HAVE_USLEEP respectively. Define
+ HAVE_SLEEP and HAVE_USLEEP under __DMC__.
+
+2003-09-24 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * url.c (url_escape_1): Revert unintentional change to lowercase
+ xdigit escapes.
+ (url_escape_dir): Document that this function depends on the
+ output of url_escape_1.
+
+2003-09-23 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * progress.c (create_image): Print the current ETA if we're done
+ with the download.
+ (create_image): Change '-' display char to '+' in the progress bar.
+
+ * Makefile.in (clean): Remove .libs.
+
+2003-09-23 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * cookies.c (struct cookie): New flag domain_exact.
+ (update_cookie_field): Skip leading dot in domain.
+ (find_matching_chains): Match numeric addresses exactly; don't
+ needlessly copy HOST to the stack.
+ (matching_cookie): Added argument HOST. If cookie->domain_exact
+ is set, check that HOST is equal to cookie->domain.
+ (cookie_jar_load): Only use TAB as delimiter. Document the
+ meaning of DOMAIN-FLAG. Skip leading dot in domain.
+ (cookie_jar_load): Don't ignore DOMAIN-FLAG -- instead, set
+ domain_exact to true if DOMAIN-FLAG is false.
+ (save_cookies_mapper): If domain_exact is false, prepend the
+ domain with dot, like Mozilla does.
+
+2003-09-22 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * progress.c (create_image): Print the initial part of the
+ download with '-' characters, analogous to how dot progress prints
+ the initial part with ','.
+
+ * hash.c (ptrhash): New function.
+ (ptrcmp): Ditto.
+ (hash_table_new): Default to identity hash table.
+
+2003-09-22 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * safe-ctype.h (_sch_test): The cast of BIT to unsigned char was
+ broken -- _sch_istable bitmasks are 16-bit, not 8-bit! Cast BIT
+ to unsigned short instead.
+
+2003-09-22 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * url.c (path_simplify): Instead of calls to memmove, handle "./"
+ and "../" by advancing pointers.
+
+2003-09-22 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * retr.c (getproxy): Moved from url.c.
+
+ * convert.c: Split off link conversion from url.c into separate
+ file. Also included the book-keeping stuff from recur.c.
+
+2003-09-21 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * init.c: Improved documentation of functions.
+ (cmd_boolean): Attempt to make code that tries to avoid calling
+ strcmp for "speed" a bit more readable.
+
+ * init.c (simple_atof): Report error on encountering non-digit,
+ non-"." character.
+ (simple_atoi): Replacement for myatoi(), calling interface
+ compatible with simple_atof. Updated myatoi's callers.
+
+2003-09-21 Bertrand Demiddelaer <bert@b3rt.org>
+
+ * url.c (path_simplify): Would read two bytes past the end of the
+ string in the "./" case.
+
+2003-09-21 Matthew J. Mellon <mellon@tymenet.com>
+
+ * http.c (gethttp): Recognize content-type "application/xhtml+xml"
+ as what Wget considers "text/html".
+
+2003-09-21 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * connect.c (connect_with_timeout): Made timeout type double.
+
+ * options.h (struct options): New members read_timeout,
+ dns_timeout, and connect_timeout.
+ Use them.
+
+2003-09-21 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * init.c (simple_atof): New function.
+ (cmd_time): Use it.
+ (cmd_bytes): Accept things like "1.5k" and such. Use simple_atof
+ to parse decimals.
+
+ * retr.c (limit_bandwidth): Adjust each sleep by the error of the
+ previous one.
+
+2003-09-21 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * main.c (main): Use setoptval() for setting the options. Use
+ run_command for `-e'.
+
+ * init.c (parse_line): Rewritten to return COMIND right away.
+ Changed linkage to static.
+ (run_wgetrc): Use the available comind when calling setval, so it
+ doesn't have to be computed twice.
+ (setval_internal): New function, runs the command's action without
+ any error checking.
+ (setoptval): New function, does what setval used to do, but exits
+ in case of error.
+ (run_command): New function.
+
+2003-09-21 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * connect.c (select_fd): Change MAXTIME's type to double. Handle
+ its decimal part.
+
+ * retr.c (sleep_between_retrievals): In the random-wait case, use
+ random_float() to wait between 0 and 2*opt.wait seconds.
+
+ * utils.c (run_with_timeout): Accept `double' timeouts. Correctly
+ handle timeout values in (0, 1) range.
+ (random_float): New function.
+
+ * options.h (struct options): Change the types of wait, waitretry,
+ and timeout to double.
+
+ * init.c (cmd_time): Accept floating point time.
+
+2003-09-20 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * retr.c (get_contents): Cosmetic fixes.
+
+2003-09-20 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * url.c (uri_merge): Get rid of uri_merge_1.
+ (uri_merge): Merge "foo//", "bar" as "foo//bar", not "foo///bar",
+ i.e. don't add an extra slash merely because BASE ends with two
+ slashes.
+ (parse_credentials): Renamed from parse_uname. Rewrittern in
+ standard [beg, end) calling style.
+ (url_skip_credentials): Renamed from url_skip_uname. Made static.
+ (url_skip_credentials): Include # and ; as terminators. Old code
+ would mistakenly consider "http://foo.com#hniksic@iskon.hr" to
+ contain a username.
+ (url_skip_scheme): Removed because it was unused.
+ (url_has_scheme): Require "scheme" to be at least one char long.
+
+2003-09-19 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * url.c (url_file_name): Expect NULL dir_prefix.
+
+ * init.c (cmd_file): Use a macro to prevent multiple #ifdef
+ WINDOWS.
+ (defaults): Set dir_prefix to NULL by default.
+
+2003-09-19 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * safe-ctype.h (_sch_test): Cast BIT to unsigned char, like latest
+ gcc does.
+
+2003-09-19 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * wget.h (BOUNDED_TO_ALLOCA): Evaluate PLACE only once.
+ (ARRAY_SIZE): Renamed to countof. All callers updated.
+
+2003-09-19 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * main.c (main): New option --strict-comments.
+
+ * html-parse.c (find_comment_end): New function: simple BM search
+ for "-->".
+ (map_html_tags): Use it if looking at a comment and not in strict
+ comments mode.
+
+2003-09-17 Aurelien Marchand <artaxerxes@users.sf.net>
+
+ * ftp.h: Added OS400 system in enum
+ * ftp-basic.c: recognize OS400 systems
+ * ftp.c: don't prepend the CWD if talking to OS400, since it
+ breaks the change in library
+
+2003-09-18 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * retr.c (get_contents): Pass the correct argument to ssl_iread.
+
+2003-09-18 Hrvoje Niksic <hniksic@xemacs.org>
+
+ * safe-ctype.h: Don't #define ctype.h macros to errors because
+ that loses when someone #include's ctype.h after safe-ctype.h.
+
2003-09-17 Hrvoje Niksic <hniksic@xemacs.org>
* url.c: Undef U, W, C after use.