Author: yamakenz
Date: Tue Jul 10 23:46:25 2007
New Revision: 4695

Modified:
   trunk/scm/util.scm
   trunk/test/test-uim-util.scm

Log:
* scm/util.scm
  - (charcode->string): Fix non-integer value acception as like as the
    previous C version
* test/test-uim-util.scm
  - Update the "passed revision" comment
  - Add a test for charcode->string


Modified: trunk/scm/util.scm
==============================================================================
--- trunk/scm/util.scm  (original)
+++ trunk/scm/util.scm  Tue Jul 10 23:46:25 2007
@@ -314,7 +314,10 @@
 
 (define charcode->string
   (lambda (c)
-    (list->string (list (integer->char (bitwise-and 255 c))))))
+    (if (and (integer? c)
+            (not (zero? c)))
+       (list->string (list (integer->char (bitwise-and 255 c))))
+       "")))
 
 (define string->charcode
   (lambda (s)

Modified: trunk/test/test-uim-util.scm
==============================================================================
--- trunk/test/test-uim-util.scm        (original)
+++ trunk/test/test-uim-util.scm        Tue Jul 10 23:46:25 2007
@@ -29,7 +29,7 @@
 ;;; SUCH DAMAGE.
 ;;;;
 
-;; These tests are passed at revision 4693 (new repository)
+;; These tests are passed at revision 4695 (new repository)
 
 (use test.unit)
 
@@ -253,6 +253,7 @@
                 (uim '(nthcdr 5 lst))))
 
   ("test charcode->string"
+   (assert-equal ""   (uim '(charcode->string 'return)))
    (assert-equal ""   (uim '(charcode->string 0)))
    (assert-equal "\n" (uim '(charcode->string 10)))
    (assert-equal "\r" (uim '(charcode->string 13)))

Reply via email to