1. 04 Dec, 2018 1 commit
  2. 03 Dec, 2018 2 commits
  3. 01 Dec, 2018 2 commits
  4. 22 Nov, 2018 2 commits
  5. 21 Nov, 2018 1 commit
    • Jean-Claude Monnin's avatar
      Fix warning when NDEBUG is defined [-Wunused-variable] · 51ca982a
      Jean-Claude Monnin authored
      Because `isPeek()` is side effect free this should not change anything.
      
      The reason this warning is not shown in the unit tests is because the asserts
      are always evaluated in the unit test:
      
      #define RAPIDJSON_ASSERT(x) (!(x) ? throw AssertException(RAPIDJSON_STRINGIFY(x)) : (void)0u)
      51ca982a
  6. 01 Nov, 2018 1 commit
  7. 26 Oct, 2018 1 commit
  8. 08 Oct, 2018 2 commits
  9. 19 Sep, 2018 2 commits
  10. 18 Sep, 2018 2 commits
  11. 11 Sep, 2018 1 commit
  12. 10 Sep, 2018 7 commits
  13. 05 Aug, 2018 2 commits
  14. 03 Aug, 2018 2 commits
  15. 01 Aug, 2018 2 commits
  16. 31 Jul, 2018 2 commits
    • IceTrailer's avatar
    • Veselin Georgiev's avatar
      Fix SIGBUS due to unaligned access · 748a652f
      Veselin Georgiev authored
      Update RAPIDJSON_ALIGN() to always align on an 8-byte boundary
      unless otherwise overridden.
      
      On some platforms (such as ARM), 64-bit items (such as doubles and
      64-bit integers) must be aligned to an 8 byte address, even though the
      architecture is only 32-bits. On these platforms, MemoryPoolAllocator
      must match the malloc() behavior and return a 8 byte aligned allocation.
      This eliminates any alignment issues that may occur at the expense of
      additional memory overhead.
      
      Failure to do so caused a SIGBUS signal when calling
      GenericValue::SetNull(). The size of the data_ member of the
      GenericValue class is 16 bytes in 32-bit mode and its constructor
      requires an 8-byte aligned access.
      
      While parsing a JSON formatted string using Document::ParseStream(), a
      stack object containing GenericValue items was constructed. Since the
      stack was 8-byte aligned, the constructor calls would succeed. When the
      lifetime of the object ends, SetObjectRaw() is invoked. This triggered
      an allocation with 4-byte alignment to which the previously 8-byte
      aligned GenericValue array was copied. After this, any call to a
      GenericValue API that triggered the constructor and thus the placement
      new operation on the Data type member would trigger a SIGBUS.
      Signed-off-by: 's avatarVeselin Georgiev <veselin.georgiev@garmin.com>
      Signed-off-by: 's avatarJoshua Watt <Joshua.Watt@garmin.com>
      748a652f
  17. 18 Jul, 2018 1 commit
  18. 17 Jul, 2018 1 commit
  19. 16 Jul, 2018 1 commit
  20. 15 Jul, 2018 3 commits
    • Philipp A Hartmann's avatar
      Suppress -Wformat-overflow warning/error · 15251168
      Philipp A Hartmann authored
      GCC 7 and later warn about overflow/truncation when using
      sprintf and related functions with fixed-size buffers.
      
      Suppress the warning in schematest.cpp.
      15251168
    • Philipp A Hartmann's avatar
      Fix -Wsign-conversion warnings/errors · a26267d1
      Philipp A Hartmann authored
      GCC 8 (incorrectly) warns about sign conversions in (constant)
      array size expressions:
      
      error: conversion to 'long unsigned int' from 'int' may
      change the sign of the result [-Werror=sign-conversion]
           char schemaBuffer_[128 * 1024];
      
      Make these expressions unsigned by adding a 'u' suffix to
      the first operands.
      a26267d1
    • Philipp A Hartmann's avatar
      Fix -Wclass-memaccess warnings/errors · fa5963a2
      Philipp A Hartmann authored
      Recent GCC versions warn about using memcpy/memmove to
      write to a class pointer (-Wclass-memaccess).
      
      Avoid the warnings by casting to void* first.
      
      Closes #1086.
      Closes #1205.
      Closes #1246.
      fa5963a2
  21. 12 Jul, 2018 2 commits