diff options
author | Haru <haru@dotalux.com> | 2016-02-16 16:59:09 +0100 |
---|---|---|
committer | Haru <haru@dotalux.com> | 2016-02-17 10:39:53 +0100 |
commit | d38019541508d0efb3477ef4938ea8e939444333 (patch) | |
tree | 095efa7663585f56bcf3fa2f641a0e1f633f10d6 /3rdparty/libconfig/scanctx.c | |
parent | 1bfb8c1283a0c662902cc8cb94d30159a9bc1183 (diff) | |
download | hercules-d38019541508d0efb3477ef4938ea8e939444333.tar.gz hercules-d38019541508d0efb3477ef4938ea8e939444333.tar.bz2 hercules-d38019541508d0efb3477ef4938ea8e939444333.tar.xz hercules-d38019541508d0efb3477ef4938ea8e939444333.zip |
Updated libconfig to version 1.5
- Based on https://github.com/hyperrealm/libconfig/releases/tag/v1.5
f9f23d7a95608936ea7d839731dbd56f1667b7ed
- Improvements that come with this libconfig version:
* Don't fclose() a null pointer.
* check if file being opened is a directory
* added config_set_options(), config_get_options(), setOptions(),
getOptions().
* renamed config_setting_lookup_from() to config_setting_lookup() and
documented it
* floating point precision loss patch
* scanner code cleanup
* parser code cleanup
* bugfix; capture root filename
- Parser generated with Bison 2.7
- Scanner generated with flex 2.6
- This includes the windows-compatibility commit
909b06c07e30e456cc63f58d31b0e2f3aad4cc43 from upstream (although not
part of version 1.5)
Signed-off-by: Haru <haru@dotalux.com>
Diffstat (limited to '3rdparty/libconfig/scanctx.c')
-rw-r--r-- | 3rdparty/libconfig/scanctx.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/3rdparty/libconfig/scanctx.c b/3rdparty/libconfig/scanctx.c index f2fe8cd80..b3d9a6379 100644 --- a/3rdparty/libconfig/scanctx.c +++ b/3rdparty/libconfig/scanctx.c @@ -1,7 +1,7 @@ /* ---------------------------------------------------------------------------- libconfig - A library for processing structured configuration files - Copyright (C) 2013-2015 Hercules Dev Team - Copyright (C) 2005-2010 Mark A Lindner + Copyright (C) 2013-2016 Hercules Dev Team + Copyright (C) 2005-2014 Mark A Lindner This file is part of libconfig. @@ -40,7 +40,6 @@ static const char *err_include_too_deep = "include file nesting too deep"; static const char *__scanctx_add_filename(struct scan_context *ctx, const char *filename) { -#ifndef __clang_analyzer__ // FIXME: Clang's static analyzer doesn't like this unsigned int count = ctx->num_filenames; const char **f; @@ -62,7 +61,6 @@ static const char *__scanctx_add_filename(struct scan_context *ctx, ctx->filenames[ctx->num_filenames] = filename; ++ctx->num_filenames; -#endif // __clang_analyzer__ return(filename); } @@ -71,8 +69,10 @@ static const char *__scanctx_add_filename(struct scan_context *ctx, void scanctx_init(struct scan_context *ctx, const char *top_filename) { memset(ctx, 0, sizeof(struct scan_context)); +#ifndef __clang_analyzer__ // FIXME: Clang's static analyzer doesn't like this if(top_filename) ctx->top_filename = __scanctx_add_filename(ctx, strdup(top_filename)); +#endif // __clang_analyzer__ } /* ------------------------------------------------------------------------- */ @@ -124,7 +124,9 @@ FILE *scanctx_push_include(struct scan_context *ctx, void *buffer, if(fp) { ctx->streams[ctx->depth] = fp; +#ifndef __clang_analyzer__ // FIXME: Clang's static analyzer doesn't like this ctx->files[ctx->depth] = __scanctx_add_filename(ctx, file); +#endif // __clang_analyzer__ ctx->buffers[ctx->depth] = buffer; ++(ctx->depth); } @@ -170,4 +172,3 @@ const char *scanctx_current_filename(struct scan_context *ctx) } /* ------------------------------------------------------------------------- */ -/* eof */ |