#define MAX_READ_SIZE 512
static Lisp_Object
-mark_lstream (Lisp_Object obj, void (*markobj) (Lisp_Object))
+mark_lstream (Lisp_Object obj)
{
Lstream *lstr = XLSTREAM (obj);
- return lstr->imp->marker ? (lstr->imp->marker) (obj, markobj) : Qnil;
+ return lstr->imp->marker ? (lstr->imp->marker) (obj) : Qnil;
}
static void
Lstream *lstr = XLSTREAM (obj);
char buf[200];
- sprintf (buf, "#<INTERNAL EMACS BUG (%s lstream) 0x%p>",
- lstr->imp->name, lstr);
+ sprintf (buf, "#<INTERNAL OBJECT (XEmacs bug?) (%s lstream) 0x%lx>",
+ lstr->imp->name, (long) lstr);
write_c_string (buf, printcharfun);
}
DEFINE_LRECORD_SEQUENCE_IMPLEMENTATION ("stream", lstream,
mark_lstream, print_lstream,
- finalize_lstream, 0, 0,
+ finalize_lstream, 0, 0, 0,
sizeof_lstream, Lstream);
\f
void
lstream_types[lstream_type_count] = imp;
Vlstream_free_list[lstream_type_count] =
make_lcrecord_list (sizeof (*p) + imp->size - 1,
- lrecord_lstream);
+ &lrecord_lstream);
lstream_type_count++;
}
}
static Lisp_Object
-lisp_string_marker (Lisp_Object stream, void (*markobj) (Lisp_Object))
+lisp_string_marker (Lisp_Object stream)
{
struct lisp_string_stream *str = LISP_STRING_STREAM_DATA (XLSTREAM (stream));
return str->obj;
}
static Lisp_Object
-lisp_buffer_marker (Lisp_Object stream, void (*markobj) (Lisp_Object))
+lisp_buffer_marker (Lisp_Object stream)
{
struct lisp_buffer_stream *str =
LISP_BUFFER_STREAM_DATA (XLSTREAM (stream));
- (markobj) (str->start);
- (markobj) (str->end);
+ mark_object (str->start);
+ mark_object (str->end);
return str->buffer;
}
}
void
-vars_of_lstream (void)
+reinit_vars_of_lstream (void)
{
int i;
for (i = 0; i < countof (Vlstream_free_list); i++)
{
Vlstream_free_list[i] = Qnil;
- staticpro (&Vlstream_free_list[i]);
+ staticpro_nodump (&Vlstream_free_list[i]);
}
}
+
+void
+vars_of_lstream (void)
+{
+ reinit_vars_of_lstream ();
+}