+Wed Feb 18 21:32:44 2004  Ben Pfaff  <blp@gnu.org>
+
+       * vfm.c: (procedure) Add check to prevent recursive call.
+
 Wed Feb 18 21:48:54 WST 2004 John Darrington <john@darrington.wattle.id.au>
 
        * Moved the declarations relating to values to their own header file
 
           void (*endfunc) (void *),
            void *aux)
 {
+  static int recursive_call;
+
   struct write_case_data procedure_write_data;
   struct write_case_data split_file_data;
 
+  assert (++recursive_call == 1);
+
   if (dict_get_split_cnt (default_dict) == 0) 
     {
       /* Normally we just use the data passed by the user. */
   open_active_file ();
   vfm_source->read (procedure_write_case, &procedure_write_data);
   close_active_file (&procedure_write_data);
+
+  assert (--recursive_call == 0);
 }
 \f
 /* Active file processing support.  Subtly different semantics from