Package: elinks
Version: 0.12~20080127-1
Severity: minor

I see this in debian/patches/07_local-CGI-query-fix.diff:

--- a/src/protocol/uri.c
+++ b/src/protocol/uri.c
@@ -143,7 +143,7 @@ static int
 check_whether_file_exists(unsigned char *name)
 {
       /* Check POST_CHAR etc ... */
-      static const unsigned char chars[] = POST_CHAR_S "#?";
+      static const unsigned char chars[] = POST_CHAR_S "#";
       int i;
       int namelen = strlen(name);

The patch is based on commit e96665134ae9b5106fe0d5c30d445212d970e91b,
which modified check_uri_file(), not check_whether_file_exists().
In 0.12.GIT, commit 581ef57bb4b0ed62e13933ad8aaa8575bcc05be5 already
included that change, and 0cf15ca9d9dbc00c10f23440674fcdb832dffd75
then inlined and removed check_uri_file().

At first, I thought this change in the wrong function would break
'elinks "$HOME/src/elinks-0.12/test/cgi/print-vars.sh?a=b"', where
an OS-native file name (without "file://") has a query-part appended.
Indeed, the patch makes ELinks just display an error message about
a missing file; curiously, the error message itself includes a full
URL for the file and the query, and copying that back to ELinks makes
it find the file properly.

However, it appears the command doesn't work entirely right without the
patch either: ELinks finds the correct file but discards the query.
I suppose that is a bug for us to fix; but anyway, please revert
07_local-CGI-query-fix.diff from 0.12.

Attachment: pgpzmE8qPrr2y.pgp
Description: PGP signature

Reply via email to