]> git.jsancho.org Git - guile-irrlicht.git/blobdiff - src/file-system.cpp
device
[guile-irrlicht.git] / src / file-system.cpp
index da856f4626b5b87d93e796a6993c5aa4dad7baa8..44171b362c46f4ecce38a9503a11f29c22cc9d82 100644 (file)
@@ -25,6 +25,7 @@
 #include "device.h"
 #include "file-archive.h"
 #include "file-system.h"
+#include "gsubr.h"
 #include "gui-environment.h"
 #include "scene-manager.h"
 
@@ -34,9 +35,8 @@ extern "C" {
   init_file_system (void)
   {
     init_file_system_type ();
-    scm_c_define_gsubr ("add-file-archive!", 2, 0, 1, (scm_t_subr)irr_io_addFileArchive);
-    scm_c_define_gsubr ("get-file-system", 1, 0, 0, (scm_t_subr)irr_getFileSystem);
-    scm_c_export ("add-file-archive!", "get-file-system", NULL);
+    DEFINE_GSUBR ("add-file-archive!", 2, 0, 1, irr_io_addFileArchive);
+    DEFINE_GSUBR ("get-file-system", 1, 0, 0, irr_getFileSystem);
   }
 
   DEFINE_WRAPPED_TYPE (irr::io::IFileSystem*, "file-system",
@@ -48,11 +48,11 @@ extern "C" {
                          SCM filename,
                          SCM rest)
   {
-    SCM ignore_case = scm_from_bool (1);
-    SCM ignore_paths = scm_from_bool (1);
+    SCM ignore_case = SCM_BOOL_T;
+    SCM ignore_paths = SCM_BOOL_T;
     SCM archive_type = scm_from_utf8_symbol ("unknown");
     SCM password = scm_from_utf8_string ("");
-    SCM ret_archive = scm_from_bool (0);
+    SCM ret_archive = SCM_UNDEFINED;
 
     scm_c_bind_keyword_arguments ("add-file-archive!", rest, (scm_t_keyword_arguments_flags)0,
                                   scm_from_utf8_keyword ("ignore-case"), &ignore_case,
@@ -63,7 +63,7 @@ extern "C" {
                                   SCM_UNDEFINED);
 
     irr::io::IFileArchive** retArchiveReference = 0;
-    if (!scm_is_false (ret_archive))
+    if (ret_archive != SCM_UNDEFINED)
       {
         irr::io::IFileArchive* retArchive = unwrap_file_archive (ret_archive);
         retArchiveReference = &retArchive;