Patch #5676 (syntax string source).
[pspp-builds.git] / src / ui / gui / psppire.c
index 6655a6ad5f40c68708dd17eddb8f610e89e220f6..529f9880caa46ceff8d071a5fb3b1ce949939fce 100644 (file)
@@ -29,6 +29,7 @@
 #include <data/file-handle-def.h>
 #include <data/format.h>
 #include <data/storage-stream.h>
+#include <data/case-source.h>
 #include <data/settings.h>
 #include <data/file-name.h>
 #include <data/procedure.h>
@@ -78,9 +79,14 @@ replace_flexifile (struct case_source *s)
     psppire_case_file_replace_flexifile (the_data_store->case_file,
                                         (struct flexifile *) flexifile_create (0));
   else
-    psppire_case_file_replace_flexifile (the_data_store->case_file,
-                                        (struct flexifile *)
-                                        storage_source_get_casefile (s));
+    {
+      if ( ! case_source_is_class (s, &storage_source_class))
+       return ;
+
+      psppire_case_file_replace_flexifile (the_data_store->case_file,
+                                          (struct flexifile *)
+                                          storage_source_get_casefile (s));
+    }
 }
 
 
@@ -259,5 +265,3 @@ create_icon_factory (void)
   gtk_icon_factory_add_default (factory);
 }
 
-
-