--- elinks-0.4pre17/src/protocol/file.c.orig Sun Sep 29 19:22:23 2002 +++ elinks-0.4pre17/src/protocol/file.c Sun Sep 29 19:31:32 2002 @@ -353,14 +353,23 @@ h = open(name, O_RDONLY | O_NOCTTY); if (h == -1) { - saved_errno = errno; + unsigned char *new_name = init_str(); + unsigned int new_len = 0; + add_to_str(&new_name, &new_len, name); + add_to_str(&new_name, &new_len, ".gz"); + mem_free(name); + name = new_name; + h = open(name, O_RDONLY | O_NOCTTY); + if (h == -1) { + saved_errno = errno; - d = opendir(name); - if (d) goto dir; + d = opendir(name); + if (d) goto dir; - mem_free(name); - abort_conn_with_state(c, -saved_errno); - return; + mem_free(name); + abort_conn_with_state(c, -saved_errno); + return; + } } set_bin(h);