summaryrefslogtreecommitdiff
path: root/lang/qscheme/files/patch-file.c
blob: a4f96dad40e6d5cf9bae2812d99149ff3092fb91 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
--- file.c.orig	2009-03-03 17:38:43.000000000 +0200
+++ file.c	2009-03-03 17:40:53.000000000 +0200
@@ -7,11 +7,13 @@
 
 #define SCM_FILE(x)		(FILE *)(SCM_AUX(x))
 #define SCM_FILEP(x)	(SCM_OBJTYPE(x) == SOBJ_T_FILE)
+#define SCM_FILE_SET	SCM_AUX_SET
 
 SOBJ scm_file_new(FILE *fp)
 {
   SOBJ new = scm_newcell(SOBJ_T_FILE);
-  SCM_FILE(new) = fp;
+  /*SCM_FILE(new) = fp;*/
+  SCM_FILE_SET(new, fp);
   return(new);
 }
 
@@ -77,7 +79,8 @@
   int r;
   if (!SCM_FILEP(x))		SCM_ERR("bad file", x);
   r = fclose(SCM_FILE(x));
-  SCM_FILE(x) = NULL;
+  /*SCM_FILE_SET(x) = NULL;*/
+  SCM_FILE_SET(x, NULL);
   return(SCM_MKINUM(r));
 }