/**********************************************************************
 * luc_mark.c -- mark flags for transaction
 *
 * $Author: brlewis $
 * $Source: /afs/athena.mit.edu/astaff/project/lucydev/src/lib/RCS/luc_mark.c,v $
 * $Header: /afs/athena.mit.edu/astaff/project/lucydev/src/lib/RCS/luc_mark.c,v 1.2 91/09/24 14:35:39 brlewis Exp Locker: brlewis $
 *
 * Copyright 1991 by the Massachusetts Institute of Technology.
 *
 * For copying and distribution information, please see the file
 * <mit-copyright.h>.
 **********************************************************************/
#include <mit-copyright.h>

#ifndef lint
static char rcsid_luc_mark_c[] = "$Header: /afs/athena.mit.edu/astaff/project/lucydev/src/lib/RCS/luc_mark.c,v 1.2 91/09/24 14:35:39 brlewis Exp Locker: brlewis $";
#endif /* lint */

#include "lucy/lucy.h"

/**********************************************************************
 * luc_mark(lmeeting *mp, int n, int flag)
 *	caller sets mp (usually luv_curmtgp) to specify meeting
 *	caller sets n to specify transaction number
 *	caller sets flag to be or'ed with existing flags
 *
 * - returns error code
 **********************************************************************/

#if defined(__GNUC__)
inline
#endif
long
luc_mark(mp, n, flag)
     LMEETING *mp;
     int n, flag;
{
  long code;
  ltrn *info;

  if (code = luc_trn_info(mp, n, &info)) return(code);
  dsc_set_trn_flags(&(mp->nb), n, info->flags|flag, &code);
  if (code) sprintf(luv_context, "%d", n);	/* error context */
  else info->flags |= flag;
  return(code);
}
