[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Stratagus-CVS] stratagus/src/clone ccl.c
From: |
ludovic pollet |
Subject: |
[Stratagus-CVS] stratagus/src/clone ccl.c |
Date: |
Tue, 11 Nov 2003 11:34:46 -0500 |
CVSROOT: /cvsroot/stratagus
Module name: stratagus
Branch:
Changes by: ludovic pollet <address@hidden> 03/11/11 11:34:46
Modified files:
src/clone : ccl.c
Log message:
Fixed guile & GC
Patches:
Index: stratagus/src/clone/ccl.c
diff -u stratagus/src/clone/ccl.c:1.128 stratagus/src/clone/ccl.c:1.129
--- stratagus/src/clone/ccl.c:1.128 Tue Nov 11 07:45:24 2003
+++ stratagus/src/clone/ccl.c Tue Nov 11 11:34:45 2003
@@ -26,7 +26,7 @@
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
// 02111-1307, USA.
//
-// $Id: ccl.c,v 1.128 2003/11/11 12:45:24 pludov Exp $
+// $Id: ccl.c,v 1.129 2003/11/11 16:34:45 pludov Exp $
//@{
@@ -297,7 +297,7 @@
*/
local int CclNeedProtect(SCM val)
{
- return (val != SCM_UNSPECIFIED) && (!gh_null_p(val));
+ return (val != SCM_UNSPECIFIED) && (val != NULL) && (!gh_null_p(val));
}
#endif
@@ -389,6 +389,10 @@
global void CclGcProtectedAssign(SCM* obj, SCM value)
{
+ if (*obj == value) {
+ return;
+ }
+
#ifdef GC_PROTECT_VALUE
CclGcUnprotect(obj);
(*obj) = value;
@@ -396,7 +400,7 @@
#else
#ifdef DEBUG_GC
int id;
-
+
// Check if already protected
id = FindProtectedCell(obj);
DebugCheck(id == -1);
@@ -1186,8 +1190,10 @@
#endif
#ifndef SIOD_HEAP_GC
+#ifndef USE_GUILE
gh_define("*ccl-protect*", NIL);
#endif
+#endif
print_welcome();
}
@@ -1262,7 +1268,7 @@
}
fprintf(fd, ";;; -----------------------------------------\n");
- fprintf(fd, ";;; $Id: ccl.c,v 1.128 2003/11/11 12:45:24 pludov Exp $\n");
+ fprintf(fd, ";;; $Id: ccl.c,v 1.129 2003/11/11 16:34:45 pludov Exp $\n");
fprintf(fd, "(set-video-resolution! %d %d)\n", VideoWidth, VideoHeight);
@@ -1287,7 +1293,7 @@
}
fprintf(fd, ";;; -----------------------------------------\n");
- fprintf(fd, ";;; $Id: ccl.c,v 1.128 2003/11/11 12:45:24 pludov Exp $\n");
+ fprintf(fd, ";;; $Id: ccl.c,v 1.129 2003/11/11 16:34:45 pludov Exp $\n");
// Global options
if (OriginalFogOfWar) {
@@ -1398,7 +1404,7 @@
extern SCM oblistvar;
CLprintf(file, "\n;;; -----------------------------------------\n");
- CLprintf(file, ";;; MODULE: CCL $Id: ccl.c,v 1.128 2003/11/11 12:45:24
pludov Exp $\n\n");
+ CLprintf(file, ";;; MODULE: CCL $Id: ccl.c,v 1.129 2003/11/11 16:34:45
pludov Exp $\n\n");
for (list = oblistvar; gh_list_p(list); list = gh_cdr(list)) {
SCM sym;