aboutsummaryrefslogtreecommitdiffstats
path: root/src/env.c
AgeCommit message (Collapse)AuthorFilesLines
2020-11-11Add nonnull and nullable attributes to APIDavid Robillard1-0/+1
This will warn if NULL is passed to any nonnull-annotated parameter, and is also supported by sanitizers which can check for violations at runtime. Unfortunately, it is currently only supported by clang. GCC has a similar feature in the nonnull attribute, but this has a different syntax (it's a function attribute) and is more dangerous since it is used by the optimizer to assume a null pointer is undefined behavior. This one just warns and still allows code to handle the situation gracefully, which I think is more appropriate for a library API. Note that this optimization behavior is not some unlikely edge case: switching these attributes to the GCC one will break release builds.
2020-11-10Add const, pure, and malloc function attributesDavid Robillard1-1/+1
2020-08-16Ensure that all free methods tolerate NULLDavid Robillard1-0/+4
2020-08-14Fix Wswitch-enum warningsDavid Robillard1-6/+10
2020-08-14Avoid copying nodes when equivalent prefixes are setDavid Robillard1-3/+5
2020-06-21Clean up includesDavid Robillard1-2/+5
2019-10-27Fix integer conversion warningsDavid Robillard1-2/+2
2018-09-30Fix calloc argument orderDavid Robillard1-1/+1
2018-06-15Remove redundant SERD_API declarationsDavid Robillard1-10/+0
2018-06-10Remove syntax assumptions from SerdEnv implementationDavid Robillard1-24/+1
2018-05-27Clarify errors returned by serd_env_expand()David Robillard1-3/+3
2017-06-30Fix various clang-tidy issuesDavid Robillard1-16/+16
2016-09-18Fix memory errorDavid Robillard1-2/+3
Introduced in 443f470383dc3acba0fde7b705e8ff81a7c49595
2016-07-09Fix construction of URIs with UTF-8 charactersDavid Robillard1-3/+3
2014-08-08Use Markdown in doc comments for better source readability.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@471 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2014-08-08Update copyright dates.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@467 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2014-08-05Remove unnecessary include.David Robillard1-1/+0
git-svn-id: http://svn.drobilla.net/serd/trunk@464 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2014-04-11Minor hardening.David Robillard1-6/+6
git-svn-id: http://svn.drobilla.net/serd/trunk@459 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-08-08Fix warnings: -Wshadow -Wpointer-arith -Wcast-align -Wstrict-prototypes ↵David Robillard1-4/+3
-Wmissing-prototypes. git-svn-id: http://svn.drobilla.net/serd/trunk@374 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-07-05Add error callback to reader and writer for custom error reporting.David Robillard1-1/+1
Add -q option to serdi to suppress all non-data output, e.g. errors. Resolves #815. git-svn-id: http://svn.drobilla.net/serd/trunk@354 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-03-18Tolerate NULL URI parameter in serd_env_get_base_uri().David Robillard1-1/+3
git-svn-id: http://svn.drobilla.net/serd/trunk@337 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-02-21Print command name in serdi error messages.David Robillard1-6/+2
Trim code. git-svn-id: http://svn.drobilla.net/serd/trunk@313 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-16Fix compilation on sane platforms.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@292 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-16Support compilation as C++ under MSVC++David Robillard1-7/+7
git-svn-id: http://svn.drobilla.net/serd/trunk@291 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-16Update copyright dates.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@285 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2012-01-14Lint.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@283 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-25Near 100% branch coverage.David Robillard1-26/+17
git-svn-id: http://svn.drobilla.net/serd/trunk@277 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-25100% test coverage.David Robillard1-5/+3
git-svn-id: http://svn.drobilla.net/serd/trunk@276 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-24Allow digit as first character of prefixed name suffix (match latest Turtle ↵David Robillard1-20/+14
spec). Improve env.c test coverage. Add test case for ticket #734. git-svn-id: http://svn.drobilla.net/serd/trunk@271 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-12-11Move all #ifdef gunk to serd_internal.h.David Robillard1-2/+2
Centralise file open and buffer allocation to localize platform tweaks. git-svn-id: http://svn.drobilla.net/serd/trunk@244 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-09-29Tidy.David Robillard1-1/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@218 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-09-27Add serd_env_set_prefix_from_strings for convenience.David Robillard1-0/+14
Fix configure --debug. git-svn-id: http://svn.drobilla.net/serd/trunk@217 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-08-20Avoid writing illegal Turtle names as a result of URI qualifying (fix #734).David Robillard1-0/+38
git-svn-id: http://svn.drobilla.net/serd/trunk@210 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-24Add string measuring sanity check.David Robillard1-0/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@188 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-18Add test to ensure blank node IDs don't clash with generated IDs.David Robillard1-1/+4
Add handle destructor parameter to serd_reader_new. Add serd_reader_get_handle. Rename serd_reader_set_blank_prefix to serd_reader_add_blank_prefix. Rename serd_reader_read_file to serd_reader_read_file_handle. Add new serd_reader_read_file that takes a path/URI parameter. Add serdi -i option to select input syntax. Add serdi -p and -c options to add/chop a prefix to/from blank IDs. Add optional base_uri parameter to serd_env_new. Add serd_writer_chop_blank_prefix. Bump version to 0.3.0. git-svn-id: http://svn.drobilla.net/serd/trunk@183 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-12Fix URI resolution off-by-one.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@176 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-12Use conventional string lengths not including NULL terminatorDavid Robillard1-10/+10
git-svn-id: http://svn.drobilla.net/serd/trunk@174 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-11Fix crash when setting an identical namespace prefix.David Robillard1-1/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@169 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-11Record whether strings contains quotes or newlines for smart selection of ↵David Robillard1-0/+1
long strings vs short strings in writer output. git-svn-id: http://svn.drobilla.net/serd/trunk@167 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-09Improve documentation and const-correctness.David Robillard1-3/+3
git-svn-id: http://svn.drobilla.net/serd/trunk@165 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-05-06Merge SerdEnv and SerdReadState.David Robillard1-4/+87
git-svn-id: http://svn.drobilla.net/serd/trunk@163 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-30Use descriptive return codes instead of boolDavid Robillard1-4/+4
git-svn-id: http://svn.drobilla.net/serd/trunk@154 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-27Don't hide pointers in typedefs.David Robillard1-8/+8
git-svn-id: http://svn.drobilla.net/serd/trunk@150 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-23Tidy.David Robillard1-1/+0
git-svn-id: http://svn.drobilla.net/serd/trunk@145 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-22Fix license header (awk oops).David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/serd/trunk@143 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-04-22Switch to ISC license (legally equivalent to MIT license but with less ↵David Robillard1-19/+11
obnoxious lawyer noise). git-svn-id: http://svn.drobilla.net/serd/trunk@139 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-02-25Switch to 2-clause BSD license.David Robillard1-18/+24
git-svn-id: http://svn.drobilla.net/serd/trunk@105 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-02-16Make serd_writer_set_prefix return bool so it is compatible with ↵David Robillard1-2/+2
SerdPrefixSink and can be used with serd_env_foreach. Add SERD_STYLE_CURIED option to shorten URIs in output where possible. Fix serd_env_qualify. git-svn-id: http://svn.drobilla.net/serd/trunk@102 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-02-16Add SERD_STYLE_RESOLVED option for resolving (expanding) relative URIs in ↵David Robillard1-0/+36
output. Add serd_env_qualify and serd_env_foreach. git-svn-id: http://svn.drobilla.net/serd/trunk@101 490d8e77-9747-427b-9fa3-0b8f29cee8a0
2011-01-25Add `amalgamate' waf target for building single source file distribution.David Robillard1-0/+2
git-svn-id: http://svn.drobilla.net/serd/trunk@78 490d8e77-9747-427b-9fa3-0b8f29cee8a0