Completely rewrite src/data/format.[ch], to achieve better
[pspp-builds.git] / src / data / casefile.c
index 95e0388c4e8733ed74b6a3e89ebd780a0dbbe771..e6c6fa676baa35e3315f94c9a080f9f9fbced1f2 100644 (file)
@@ -150,6 +150,7 @@ casereader_read_xfer (struct casereader *ffr, struct ccase *c)
 
   struct ccase *read_case = NULL ;
 
+  case_nullify (c);
   if ( casefile_error (cf) )
     return false;
 
@@ -173,6 +174,16 @@ casereader_destroy (struct casereader *r)
   r->class->destroy(r);
 }
 
+/* Creates a copy of R and returns it */
+struct casereader *
+casereader_clone(const struct casereader *r)
+{
+  /* Would we ever want to clone a destructive reader ?? */
+  assert ( ! r->destructive ) ;
+
+  return r->class->clone (r);
+}
+
 /* Destroys casefile CF. */
 void
 casefile_destroy(struct casefile *cf)