Revision: 5993
Author: iratqq
Date: Sat Aug 29 23:52:54 2009
Log: * scm/fileio.scm (file-ready?):
  - API change.
  - Take multiple file handlers.
* scm/http-client.scm (http:get):
  - Sync API.

http://code.google.com/p/uim/source/detail?r=5993

Modified:
 /trunk/scm/fileio.scm
 /trunk/scm/http-client.scm

=======================================
--- /trunk/scm/fileio.scm       Sat Aug 29 22:10:43 2009
+++ /trunk/scm/fileio.scm       Sat Aug 29 23:52:54 2009
@@ -129,9 +129,10 @@
   (let-optionals* args ((newd #f))
      (duplicate2-fileno oldd newd)))

-(define (file-ready? port timeout)
-  (let* ((fd (fd? port))
-         (fds (list (cons fd (assq-cdr '$POLLIN file-poll-flags-alist))))
+(define (file-ready? fd-list timeout)
+  (let* ((fds (map (lambda (fd)
+                     (cons fd (assq-cdr '$POLLIN file-poll-flags-alist)))
+                   fd-list))
          (ret (file-poll fds timeout)))
     (cond ((not ret)
            (uim-notify-fatal (N_ "poll error"))
@@ -140,4 +141,5 @@
            (uim-notify-info (N_ "timeout"))
            #f)
           (else
-           #t))))
+           ret))))
+
=======================================
--- /trunk/scm/http-client.scm  Sat Aug 29 23:23:42 2009
+++ /trunk/scm/http-client.scm  Sat Aug 29 23:52:54 2009
@@ -206,7 +206,7 @@
        (lambda (port)
(and-let* ((request (http:make-get-request-string hostname path servname proxy request-alist))
                     (nr (file-display request port))
-                    (ready? (file-ready? port http-timeout))
+                    (ready? (file-ready? (list (fd? port)) http-timeout))
                     (proxy-header (if proxy
                                       (http:read-header port)
                                       '()))

Reply via email to