any-writer: Add comment.
[pspp] / src / data / any-writer.c
index b398c70f8ece923455b9fa0b5d62f41e90814a10..ba4149d78bab2e711b3ae8f7e0c8ec5210eebd28 100644 (file)
@@ -1,5 +1,5 @@
 /* PSPP - a program for statistical analysis.
-   Copyright (C) 2006, 2011 Free Software Foundation, Inc.
+   Copyright (C) 2006, 2010, 2011 Free Software Foundation, Inc.
 
    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
 
 #include "data/any-writer.h"
 
-#include <assert.h>
 #include <errno.h>
 #include <stdbool.h>
 #include <stdio.h>
 #include <stdlib.h>
 
+#include "data/dataset-writer.h"
 #include "data/file-handle-def.h"
 #include "data/file-name.h"
 #include "data/por-file-writer.h"
-#include "data/scratch-writer.h"
 #include "data/sys-file-writer.h"
 #include "libpspp/assertion.h"
 #include "libpspp/message.h"
@@ -38,7 +37,8 @@
 #include "gettext.h"
 #define _(msgid) gettext (msgid)
 
-/* Creates and returns a writer for HANDLE with the given DICT. */
+/* Creates and returns a writer for HANDLE with the given DICT.  The caller
+  retains ownership of DICT, which might get modified to assign short names. */
 struct casewriter *
 any_writer_open (struct file_handle *handle, struct dictionary *dict)
 {
@@ -49,7 +49,7 @@ any_writer_open (struct file_handle *handle, struct dictionary *dict)
         struct casewriter *writer;
         char *extension;
 
-        extension = fn_extension (fh_get_file_name (handle));
+        extension = fn_extension (handle);
         str_lowercase (extension);
 
         if (!strcmp (extension, ".por"))
@@ -67,8 +67,8 @@ any_writer_open (struct file_handle *handle, struct dictionary *dict)
       msg (ME, _("The inline file is not allowed here."));
       return NULL;
 
-    case FH_REF_SCRATCH:
-      return scratch_writer_open (handle, dict);
+    case FH_REF_DATASET:
+      return dataset_writer_open (handle, dict);
     }
 
   NOT_REACHED ();