summaryrefslogtreecommitdiff
path: root/libguile/vports.c
diff options
context:
space:
mode:
authorAndy Wingo <wingo@pobox.com>2012-03-08 13:22:09 +0100
committerAndy Wingo <wingo@pobox.com>2012-03-08 13:22:09 +0100
commitbc612809929b85fdcb39bc17a15a53c88b43a8bd (patch)
tree14444f0fb0f69cf9db6b7bf1493c780488c47093 /libguile/vports.c
parentc336514976ed3f2b2b20c56149ede7f5ec549c52 (diff)
parentf740445a9b5bf0a5e5090f0a2ddaffb2b803bab7 (diff)
downloadguile-bc612809929b85fdcb39bc17a15a53c88b43a8bd.tar.gz
Merge remote-tracking branch 'local-2.0/stable-2.0'
Conflicts: configure.ac libguile/finalizers.c libguile/finalizers.h libguile/gc.c libguile/gc.h libguile/inline.c libguile/inline.h libguile/ports.c libguile/smob.c libguile/smob.h module/ice-9/deprecated.scm module/ice-9/r4rs.scm
Diffstat (limited to 'libguile/vports.c')
-rw-r--r--libguile/vports.c18
1 files changed, 4 insertions, 14 deletions
diff --git a/libguile/vports.c b/libguile/vports.c
index 62f552ad7..4ff13f2e8 100644
--- a/libguile/vports.c
+++ b/libguile/vports.c
@@ -56,21 +56,11 @@ sf_flush (SCM port)
scm_t_port *pt = SCM_PTAB_ENTRY (port);
SCM stream = SCM_PACK (pt->stream);
- if (pt->write_pos > pt->write_buf)
- {
- /* write the byte. */
- scm_call_1 (SCM_SIMPLE_VECTOR_REF (stream, 0),
- SCM_MAKE_CHAR (*pt->write_buf));
- pt->write_pos = pt->write_buf;
-
- /* flush the output. */
- {
- SCM f = SCM_SIMPLE_VECTOR_REF (stream, 2);
+ SCM f = SCM_SIMPLE_VECTOR_REF (stream, 2);
+
+ if (scm_is_true (f))
+ scm_call_0 (f);
- if (scm_is_true (f))
- scm_call_0 (f);
- }
- }
}
static void