lua

A copy of the Lua development repository
Log | Files | Refs | README

commit 970995c3f258101ae90be4bcb762b6d38bb2b2fd
parent b17c76817d008de0e0de460c5d0fac4741d0fe02
Author: Roberto Ierusalimschy <roberto@inf.puc-rio.br>
Date:   Tue, 17 Oct 1995 09:52:19 -0200

'luaI_travfallbacks' now can look for a fallback.

Diffstat:
Mfallback.c | 10++++++----
Mfallback.h | 6+++---
2 files changed, 9 insertions(+), 7 deletions(-)

diff --git a/fallback.c b/fallback.c @@ -3,7 +3,7 @@ ** TecCGraf - PUC-Rio */ -char *rcs_fallback="$Id: fallback.c,v 1.14 1995/10/04 14:20:26 roberto Exp roberto $"; +char *rcs_fallback="$Id: fallback.c,v 1.15 1995/10/09 13:14:29 roberto Exp roberto $"; #include <stdio.h> #include <string.h> @@ -162,7 +162,7 @@ Object *luaI_getlocked (int ref) } -void luaI_travlock (void (*fn)(Object *)) +void luaI_travlock (int (*fn)(Object *)) { Word i; for (i=0; i<lockSize; i++) @@ -170,9 +170,11 @@ void luaI_travlock (void (*fn)(Object *)) } -void luaI_travfallbacks (void (*fn)(Object *)) +char *luaI_travfallbacks (int (*fn)(Object *)) { Word i; for (i=0; i<N_FB; i++) - fn(&luaI_fallBacks[i].function); + if (fn(&luaI_fallBacks[i].function)) + return luaI_fallBacks[i].kind; + return NULL; } diff --git a/fallback.h b/fallback.h @@ -1,5 +1,5 @@ /* -** $Id: fallback.h,v 1.8 1995/10/04 14:20:26 roberto Exp roberto $ +** $Id: fallback.h,v 1.9 1995/10/09 13:14:29 roberto Exp roberto $ */ #ifndef fallback_h @@ -27,8 +27,8 @@ extern struct FB { void luaI_setfallback (void); int luaI_lock (Object *object); Object *luaI_getlocked (int ref); -void luaI_travlock (void (*fn)(Object *)); -void luaI_travfallbacks (void (*fn)(Object *)); +void luaI_travlock (int (*fn)(Object *)); +char *luaI_travfallbacks (int (*fn)(Object *)); #endif