X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=form%2Ffld_ftlink.c;h=ce6014dbb81a0f61e16d780061d4349b93932775;hp=9535817bb8c05bbbee88ef2fb312899052b8dc6f;hb=55ccd2b959766810cf7db8d1c4462f338ce0afc8;hpb=46722468f47c2b77b3987729b4bcf2321cccfd01 diff --git a/form/fld_ftlink.c b/form/fld_ftlink.c index 9535817b..ce6014db 100644 --- a/form/fld_ftlink.c +++ b/form/fld_ftlink.c @@ -1,5 +1,5 @@ /**************************************************************************** - * Copyright (c) 1998,2000 Free Software Foundation, Inc. * + * Copyright (c) 1998-2003,2004 Free Software Foundation, Inc. * * * * Permission is hereby granted, free of charge, to any person obtaining a * * copy of this software and associated documentation files (the * @@ -28,12 +28,11 @@ /**************************************************************************** * Author: Juergen Pfeifer, 1995,1997 * - * Contact: http://www.familiepfeifer.de/Contact.aspx?Lang=en * ****************************************************************************/ #include "form.priv.h" -MODULE_ID("$Id: fld_ftlink.c,v 1.6 2002/07/06 15:33:27 juergen Exp $") +MODULE_ID("$Id: fld_ftlink.c,v 1.11 2004/12/25 22:24:10 tom Exp $") /*--------------------------------------------------------------------------- | Facility : libnform @@ -47,40 +46,41 @@ MODULE_ID("$Id: fld_ftlink.c,v 1.6 2002/07/06 15:33:27 juergen Exp $") | E_BAD_ARGUMENT - invalid arguments | E_SYSTEM_ERROR - system error (no memory) | -| Return Values : Fieldtype pointer or NULL if error occured. +| Return Values : Fieldtype pointer or NULL if error occurred. +--------------------------------------------------------------------------*/ NCURSES_EXPORT(FIELDTYPE *) -link_fieldtype -(FIELDTYPE * type1, FIELDTYPE * type2) +link_fieldtype(FIELDTYPE *type1, FIELDTYPE *type2) { FIELDTYPE *nftyp = (FIELDTYPE *)0; - if ( type1 && type2 ) + T((T_CALLED("link_fieldtype(%p,%p)"), type1, type2)); + if (type1 && type2) { nftyp = (FIELDTYPE *)malloc(sizeof(FIELDTYPE)); + if (nftyp) { *nftyp = *_nc_Default_FieldType; nftyp->status |= _LINKED_TYPE; - if ((type1->status & _HAS_ARGS) || (type2->status & _HAS_ARGS) ) + if ((type1->status & _HAS_ARGS) || (type2->status & _HAS_ARGS)) nftyp->status |= _HAS_ARGS; - if ((type1->status & _HAS_CHOICE) || (type2->status & _HAS_CHOICE) ) + if ((type1->status & _HAS_CHOICE) || (type2->status & _HAS_CHOICE)) nftyp->status |= _HAS_CHOICE; - nftyp->left = type1; - nftyp->right = type2; + nftyp->left = type1; + nftyp->right = type2; type1->ref++; type2->ref++; } else { - SET_ERROR( E_SYSTEM_ERROR ); + SET_ERROR(E_SYSTEM_ERROR); } } else { - SET_ERROR( E_BAD_ARGUMENT ); + SET_ERROR(E_BAD_ARGUMENT); } - return nftyp; + returnFieldType(nftyp); } /* fld_ftlink.c ends here */