diff --git a/src/lisp/print.c b/src/lisp/print.c
index 9f8fa10b9841e8d7d7907e6c5984f5b038d7b993..f8a90866185dcf09df25f8d8a402ce06e321a821 100644
--- a/src/lisp/print.c
+++ b/src/lisp/print.c
@@ -372,11 +372,11 @@ print_string(struct vector* vector)
     int len = fixnum_value(vector->length);
               
     while (len-- > 0) {
-        if ((*charptr == '"')) {
+        if (*charptr == '"') {
             putchar('\\');
         }
         /* Just dump out the UTF-16 data */
-        putw(*charptr, stdout);
+        fwrite(charptr, sizeof(*charptr), 1,  stdout);
         charptr++;
     }
 #endif