2 * CDE - Common Desktop Environment
4 * Copyright (c) 1993-2012, The Open Group. All rights reserved.
6 * These libraries and programs are free software; you can
7 * redistribute them and/or modify them under the terms of the GNU
8 * Lesser General Public License as published by the Free Software
9 * Foundation; either version 2 of the License, or (at your option)
12 * These libraries and programs are distributed in the hope that
13 * they will be useful, but WITHOUT ANY WARRANTY; without even the
14 * implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
15 * PURPOSE. See the GNU Lesser General Public License for more
18 * You should have received a copy of the GNU Lesser General Public
19 * License along with these librararies and programs; if not, write
20 * to the Free Software Foundation, Inc., 51 Franklin Street, Fifth
21 * Floor, Boston, MA 02110-1301 USA
24 * $TOG: privbuf.h /main/5 1999/10/15 17:23:22 mgreess $
26 * (c) Copyright 1996 Digital Equipment Corporation.
27 * (c) Copyright 1993,1994,1996 Hewlett-Packard Company.
28 * (c) Copyright 1993,1994,1996 International Business Machines Corp.
29 * (c) Copyright 1993,1994,1996 Sun Microsystems, Inc.
30 * (c) Copyright 1993,1994,1996 Novell, Inc.
31 * (c) Copyright 1996 FUJITSU LIMITED.
32 * (c) Copyright 1996 Hitachi.
37 #ifdef DOMAIN_ALLOW_MALLOC_OVERRIDE
38 #include "/usr/include/apollo/shlib.h"
44 typedef void (*privbuf_func)(void *v);
47 // this is only for internal library routines needing dynamic buffers:
51 #if defined(__osf__) || defined(sun) || defined(linux) || defined(CSRG_BASED)
52 // The DEC C++ compiler rejects valid inline declarations, claiming
53 // they have both internal and external linkage.
55 inline static void *operator new(size_t size) { return malloc((unsigned)size); }
56 inline static void operator delete(void *p) { if (p) free((char*)p); }
59 #include <codelibs/dynarray.h>
60 declare_array(privbuf_charbuf, char, 128)
61 declare_array(privbuf_strvec, char*, 128)
68 extern void privbuf_freeprivbuf(void *buf);
69 extern privbuf_buffer *privbuf_allocprivbuf();
71 #endif /* __PRIVATE_ */
75 void privbuf_release(void **var);
78 extern void privbuf_release();
81 #endif /* __PRIVBUF_H_ */