X-Git-Url: http://mj.ucw.cz/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fmempool.h;h=255e5389fd8431d7974fe32af8046eb261dbc9a1;hb=ff36b07f44efa12a78809ee05bd6d0c25fc60495;hp=8d964e4d30f174e60b94ab538fa40c12f3d0560e;hpb=cad27e97e6370f96903d42aaf345c099af0a03bd;p=libucw.git diff --git a/lib/mempool.h b/lib/mempool.h index 8d964e4d..255e5389 100644 --- a/lib/mempool.h +++ b/lib/mempool.h @@ -1,7 +1,7 @@ /* * UCW Library -- Memory Pools * - * (c) 1997--2004 Martin Mares + * (c) 1997--2005 Martin Mares * * This software may be freely distributed and used according to the terms * of the GNU Lesser General Public License. @@ -29,7 +29,7 @@ void *mp_alloc_zero(struct mempool *, uns); static inline void *mp_alloc_fast(struct mempool *p, uns l) { - byte *f = (void *) (((uns) p->free + POOL_ALIGN - 1) & ~(POOL_ALIGN - 1)); + byte *f = (void *) (((addr_int_t) p->free + POOL_ALIGN - 1) & ~(addr_int_t)(POOL_ALIGN - 1)); byte *ee = f + l; if (ee > p->last) return mp_alloc(p, l); @@ -60,7 +60,7 @@ mp_end_string(struct mempool *p, void *stop) p->free = stop; } -/* pool-str.c */ +/* mempool-str.c */ char *mp_strdup(struct mempool *, char *); char *mp_multicat(struct mempool *, ...); @@ -70,4 +70,9 @@ mp_strcat(struct mempool *mp, char *x, char *y) return mp_multicat(mp, x, y, NULL); } +/* mempool-fmt.c */ + +char *mp_printf(struct mempool *p, char *fmt, ...) FORMAT_CHECK(printf,2,3); +char *mp_vprintf(struct mempool *p, char *fmt, va_list args); + #endif