chicken-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Chicken-users] Patch for Spiffy's ``+'' problem


From: felix winkelmann
Subject: Re: [Chicken-users] Patch for Spiffy's ``+'' problem
Date: Tue, 7 Feb 2006 08:27:53 +0100

Thanks, Peter. I didn't get around fixing this earlier.
A new version is available.

cheers,
felix

On 2/6/06, Peter Busser <address@hidden> wrote:
> Hi!
>
> I have fixed the code which prevented Spiffy from serving files with a
> ``+'' in their filename:
>
> --- http-utils.scm.orig 2006-02-06 15:20:14.000000000 +0100
> +++ http-utils.scm      2006-02-06 13:55:02.000000000 +0100
> @@ -108,8 +108,16 @@
>        (parse-encoded-arguments args) ) ]
>      [else (values (http:canonicalize-string url) '())] ) )
>
> +(define (separate-fields str)
> +  (let ((str-list (string-split str "?" #t)))
> +    (string-intersperse (cons (car str-list)
> +                             (map (lambda (s) (string-translate s "+" " "))
> +                                  (cdr str-list)))
> +                       "?")))
> +
> +
>  (define (http:canonicalize-string str)
> -  (let loop ([i 0] [str (string-translate str "+" " ")])
> +  (let loop ([i 0] [str (separate-fields str)])
>      (match (string-search-positions "%[0-9ABCDEFabcdef]{2}" str i)
>        [((i1 i2))
>         (loop
>
> Groetjes,
> Peter.
>
>
> _______________________________________________
> Chicken-users mailing list
> address@hidden
> http://lists.nongnu.org/mailman/listinfo/chicken-users
>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]