ING_DB
This commit is contained in:
parent
4f9d7e698d
commit
48a90f1501
|
|
@ -0,0 +1,51 @@
|
|||
# include <stdio.h>
|
||||
# include "gen.h"
|
||||
# include "../h/dbs.h"
|
||||
|
||||
/*
|
||||
** MCALL -- call a macro
|
||||
**
|
||||
** This takes care of springing a macro and processing it for
|
||||
** any side effects. Replacement text is saved away in a static
|
||||
** buffer and returned.
|
||||
**
|
||||
** Parameters:
|
||||
** mac -- the macro to spring.
|
||||
**
|
||||
** Returns:
|
||||
** replacement text.
|
||||
*/
|
||||
char *mcall(mac)
|
||||
char *mac;
|
||||
{
|
||||
static char buf[FILENAME + 1];
|
||||
register int c;
|
||||
register char *p;
|
||||
extern int macsget();
|
||||
|
||||
# ifdef xMTR2
|
||||
AAtTfp(18, -1, "MCALL: `%s'\n", mac);
|
||||
# endif
|
||||
|
||||
/* set up to process the macro */
|
||||
macinit(macsget, &mac, FALSE);
|
||||
|
||||
/* process it -- throw away result */
|
||||
for (p = buf; (c = macgetch()) > 0; )
|
||||
{
|
||||
# ifdef xMTR2
|
||||
if (AAtTf(18, 1))
|
||||
putchar(c);
|
||||
# endif
|
||||
if (p < &buf[sizeof buf])
|
||||
*p++ = c;
|
||||
}
|
||||
*p = 0;
|
||||
|
||||
# ifdef xMTR2
|
||||
if (AAtTf(18, 1))
|
||||
putchar('\n');
|
||||
# endif
|
||||
|
||||
return (buf);
|
||||
}
|
||||
Loading…
Reference in New Issue