Return-Path: Delivered-To: apache-cvs-archive@hyperreal.org Received: (qmail 14040 invoked by uid 6000); 4 Jan 1999 19:49:50 -0000 Received: (qmail 13940 invoked by alias); 4 Jan 1999 19:49:48 -0000 Delivered-To: apache-1.3-cvs@hyperreal.org Received: (qmail 13892 invoked by uid 161); 4 Jan 1999 19:49:47 -0000 Date: 4 Jan 1999 19:49:47 -0000 Message-ID: <19990104194947.13891.qmail@hyperreal.org> From: coar@hyperreal.org To: apache-1.3-cvs@hyperreal.org Subject: cvs commit: apache-1.3/src/modules/standard mod_autoindex.c Sender: apache-cvs-owner@apache.org Precedence: bulk Reply-To: new-httpd@apache.org coar 99/01/04 11:49:46 Modified: src CHANGES src/modules/standard mod_autoindex.c Log: Fix mod_autoindex's handling of SuppressColumnSorting; the display order could be manually overridden by putting the appropriate query string into the URL (one of the strings the column-header anchors used). Revision Changes Path 1.1201 +6 -0 apache-1.3/src/CHANGES Index: CHANGES =================================================================== RCS file: /home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.1200 retrieving revision 1.1201 diff -u -r1.1200 -r1.1201 --- CHANGES 1999/01/04 14:35:54 1.1200 +++ CHANGES 1999/01/04 19:49:36 1.1201 @@ -1,5 +1,11 @@ Changes with Apache 1.3.4 + *) IndexOptions SuppressColumnSorting only turned off making + the column headers anchors; you could still change the display + order by manually adding a '?N=A' or similar query string to the + URL. Now SuppressColumnSorting locks in the sort order so + it can't be overridden this way. [Ken Coar] + *) Added IndexOrderDefault directive to supply a default sort order for FancyIndexed directory listings. [Ken Coar] PR#1699 1.101 +20 -22 apache-1.3/src/modules/standard/mod_autoindex.c Index: mod_autoindex.c =================================================================== RCS file: /home/cvs/apache-1.3/src/modules/standard/mod_autoindex.c,v retrieving revision 1.100 retrieving revision 1.101 diff -u -r1.100 -r1.101 --- mod_autoindex.c 1999/01/04 14:35:55 1.100 +++ mod_autoindex.c 1999/01/04 19:49:41 1.101 @@ -1365,35 +1365,33 @@ /* * Figure out what sort of indexing (if any) we're supposed to use. + * + * If no QUERY_STRING was specified or column sorting has been + * explicitly disabled, we use the default specified by the + * IndexOrderDefault directive (if there is one); otherwise, + * we fall back to ascending by name. */ - if (autoindex_opts & SUPPRESS_COLSORT) { + qstring = r->args; + if ((autoindex_opts & SUPPRESS_COLSORT) + || ((qstring == NULL) || (*qstring == '\0'))) { + qstring = autoindex_conf->default_order; + } + /* + * If there is no specific ordering defined for this directory, + * default to ascending by filename. + */ + if ((qstring == NULL) || (*qstring == '\0')) { keyid = K_NAME; direction = D_ASCENDING; } else { - qstring = r->args; - - /* - * If no QUERY_STRING was specified, we use the default specified - * by the IndexOrderDefault directive (if there is one); otherwise, - * we fall back to ascending by name. - */ - if ((qstring == NULL) || (*qstring == '\0')) { - qstring = autoindex_conf->default_order; + keyid = *qstring; + ap_getword(r->pool, &qstring, '='); + if (qstring != '\0') { + direction = *qstring; } - if ((qstring == NULL) || (*qstring == '\0')) { - keyid = K_NAME; - direction = D_ASCENDING; - } else { - keyid = *qstring; - ap_getword(r->pool, &qstring, '='); - if (qstring != '\0') { - direction = *qstring; - } - else { - direction = D_ASCENDING; - } + direction = D_ASCENDING; } }