guile-commits
[Top][All Lists]
Advanced

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

[Guile-commits] GNU Guile branch, master, updated. v2.1.0-163-g453acfa


From: Mark H Weaver
Subject: [Guile-commits] GNU Guile branch, master, updated. v2.1.0-163-g453acfa
Date: Sat, 24 Aug 2013 02:39:01 +0000

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "GNU Guile".

http://git.savannah.gnu.org/cgit/guile.git/commit/?id=453acfacf408fafe0712f8796e06241d236d011a

The branch, master has been updated
       via  453acfacf408fafe0712f8796e06241d236d011a (commit)
       via  0ac084bf2b0b0d7dcae4c5f27477f5af0374d6e5 (commit)
       via  df3acd296e7149630fd6030aced6331ae6dd424b (commit)
       via  1fcf690929d3cd5221f4fe95ed79f356be382a43 (commit)
       via  20d28792b3781e2ca4fd31f4978fc7a0adfbab9a (commit)
      from  c099201da1de71652b9791fb0a3a863b6d3c355d (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 453acfacf408fafe0712f8796e06241d236d011a
Merge: c099201 0ac084b
Author: Mark H Weaver <address@hidden>
Date:   Fri Aug 23 22:36:02 2013 -0400

    Merge remote-tracking branch 'origin/stable-2.0'

-----------------------------------------------------------------------

Summary of changes:
 doc/ref/api-io.texi                  |    2 +-
 module/ice-9/boot-9.scm              |    4 +++-
 module/ice-9/curried-definitions.scm |   27 ++++++++++-----------------
 module/web/http.scm                  |    9 +++------
 test-suite/tests/web-http.test       |    4 ++++
 5 files changed, 21 insertions(+), 25 deletions(-)

diff --git a/doc/ref/api-io.texi b/doc/ref/api-io.texi
index 8e3d40a..19ed3fc 100644
--- a/doc/ref/api-io.texi
+++ b/doc/ref/api-io.texi
@@ -1932,7 +1932,7 @@ exact integer object. If no characters can be read before 
an end of
 file, the end-of-file object is returned.
 @end deffn
 
address@hidden {Scheme Procedure} get-string-all textual-input-port count
address@hidden {Scheme Procedure} get-string-all textual-input-port
 Reads from @var{textual-input-port} until an end of file, decoding
 characters in the same manner as @code{get-string-n} and
 @code{get-string-n!}.
diff --git a/module/ice-9/boot-9.scm b/module/ice-9/boot-9.scm
index 30aabb9..cf0dcd8 100644
--- a/module/ice-9/boot-9.scm
+++ b/module/ice-9/boot-9.scm
@@ -2599,6 +2599,8 @@ written into the port is returned."
 (define (module-add! m v var)
   (if (not (variable? var))
       (error "Bad variable to module-add!" var))
+  (if (not (symbol? v))
+      (error "Bad symbol to module-add!" v))
   (module-obarray-set! (module-obarray m) v var)
   (module-modified m))
 
@@ -3750,7 +3752,7 @@ but it fails to load."
   (syntax-rules ()
     ((_ (name . args) . body)
      (begin
-       (define name (lambda args . body))
+       (define (name . args) . body)
        (export name)))
     ((_ name val)
      (begin
diff --git a/module/ice-9/curried-definitions.scm 
b/module/ice-9/curried-definitions.scm
index 8c684a1..fa36990 100644
--- a/module/ice-9/curried-definitions.scm
+++ b/module/ice-9/curried-definitions.scm
@@ -1,4 +1,4 @@
-;;; Copyright (C) 2010  Free Software Foundation, Inc.
+;;; Copyright (C) 2010, 2013  Free Software Foundation, Inc.
 ;;;
 ;;;; This library is free software; you can redistribute it and/or
 ;;;; modify it under the terms of the GNU Lesser General Public
@@ -21,32 +21,25 @@
 
 (define-syntax cdefine
   (syntax-rules ()
-    ((_ ((head . tail) . rest) body body* ...)
-     (cdefine (head . tail)
-       (lambda rest body body* ...)))
     ((_ (head . rest) body body* ...)
-     (define head
+     (cdefine head
        (lambda rest body body* ...)))
-    ((_ . rest)
-     (define . rest))))
+    ((_ name val)
+     (define name val))))
 
 (define-syntax cdefine*
   (syntax-rules ()
-    ((_ ((head . tail) . rest) body body* ...)
-     (cdefine* (head . tail)
-       (lambda* rest body body* ...)))
     ((_ (head . rest) body body* ...)
-     (define* head
+     (cdefine* head
        (lambda* rest body body* ...)))
-    ((_ . rest)
-     (define* . rest))))
+    ((_ name val)
+     (define* name val))))
 
 (define-syntax define-public
   (syntax-rules ()
-    ((_ (name . args) . body)
-     (begin
-       (cdefine (name . args) . body)
-       (export name)))
+    ((_ (head . rest) body body* ...)
+     (define-public head
+       (lambda rest body body* ...)))
     ((_ name val)
      (begin
        (define name val)
diff --git a/module/web/http.scm b/module/web/http.scm
index 21d2964..af04259 100644
--- a/module/web/http.scm
+++ b/module/web/http.scm
@@ -1137,16 +1137,13 @@ three values: the method, the URI, and the version."
           (display host-port port)))))
   (let ((path (uri-path uri))
         (query (uri-query uri)))
-    (if (not (string-null? path))
+    (if (string-null? path)
+        (display "/" port)
         (display path port))
     (if query
         (begin
           (display "?" port)
-          (display query port)))
-    (if (and (string-null? path)
-             (not query))
-        ;; Make sure we display something.
-        (display "/" port)))
+          (display query port))))
   (display #\space port)
   (write-http-version version port)
   (display "\r\n" port))
diff --git a/test-suite/tests/web-http.test b/test-suite/tests/web-http.test
index b2c5c2c..e24a268 100644
--- a/test-suite/tests/web-http.test
+++ b/test-suite/tests/web-http.test
@@ -173,6 +173,10 @@
                               (build-uri 'http
                                          #:path "/pub/WWW/TheProject.html")
                               (1 . 1))
+  (pass-if-write-request-line "GET /?foo HTTP/1.1"
+                              GET
+                              (build-uri 'http #:query "foo")
+                              (1 . 1))
   (pass-if-write-request-line "HEAD /etc/hosts?foo=bar HTTP/1.1"
                               HEAD
                               (build-uri 'http


hooks/post-receive
-- 
GNU Guile



reply via email to

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