| /* |
| * Copyright 2010, Lloyd Hilaiel. |
| * |
| * Redistribution and use in source and binary forms, with or without |
| * modification, are permitted provided that the following conditions are |
| * met: |
| * |
| * 1. Redistributions of source code must retain the above copyright |
| * notice, this list of conditions and the following disclaimer. |
| * |
| * 2. Redistributions in binary form must reproduce the above copyright |
| * notice, this list of conditions and the following disclaimer in |
| * the documentation and/or other materials provided with the |
| * distribution. |
| * |
| * 3. Neither the name of Lloyd Hilaiel nor the names of its |
| * contributors may be used to endorse or promote products derived |
| * from this software without specific prior written permission. |
| * |
| * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR |
| * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
| * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
| * DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, |
| * INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
| * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
| * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
| * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, |
| * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING |
| * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
| * POSSIBILITY OF SUCH DAMAGE. |
| */ |
| |
| /** |
| * \file yajl_alloc.h |
| * default memory allocation routines for yajl which use malloc/realloc and |
| * free |
| */ |
| |
| #include "yajl_alloc.h" |
| #include <stdlib.h> |
| |
| static void * yajl_internal_malloc(void *ctx, unsigned int sz) |
| { |
| return malloc(sz); |
| } |
| |
| static void * yajl_internal_realloc(void *ctx, void * previous, |
| unsigned int sz) |
| { |
| return realloc(previous, sz); |
| } |
| |
| static void yajl_internal_free(void *ctx, void * ptr) |
| { |
| free(ptr); |
| } |
| |
| void yajl_set_default_alloc_funcs(yajl_alloc_funcs * yaf) |
| { |
| yaf->malloc = yajl_internal_malloc; |
| yaf->free = yajl_internal_free; |
| yaf->realloc = yajl_internal_realloc; |
| yaf->ctx = NULL; |
| } |
| |