/* silently discards buffered chars. */
if (pt->read_buf != &pt->shortbuf)
- scm_must_free (pt->read_buf);
+ free (pt->read_buf);
if (pt->write_buf != &pt->shortbuf)
- scm_must_free (pt->write_buf);
+ free (pt->write_buf);
scm_fport_buffer_add (port, csize, csize);
return SCM_UNSPECIFIED;
char *mode;
char *ptr;
- SCM_VALIDATE_ROSTRING (1,filename);
- SCM_VALIDATE_ROSTRING (2,modes);
- if (SCM_SUBSTRP (filename))
- filename = scm_makfromstr (SCM_ROCHARS (filename), SCM_ROLENGTH (filename), 0);
- if (SCM_SUBSTRP (modes))
- modes = scm_makfromstr (SCM_ROCHARS (modes), SCM_ROLENGTH (modes), 0);
+ SCM_VALIDATE_STRING (1, filename);
+ SCM_VALIDATE_STRING (2, modes);
+ SCM_STRING_COERCE_0TERMINATION_X (filename);
+ SCM_STRING_COERCE_0TERMINATION_X (modes);
- file = SCM_ROCHARS (filename);
- mode = SCM_ROCHARS (modes);
+ file = SCM_STRING_CHARS (filename);
+ mode = SCM_STRING_CHARS (modes);
switch (*mode)
{