Commit Graph

2861 Commits

Author SHA1 Message Date
Dan Čermák
98bca06592 Add Slices: views of STL containers & C-arrays and add unit tests
This commit adds a very simple implementation of std::span but with
mandatory range checks and only the most essential functionality.
2018-10-11 14:06:16 +02:00
Luis Díaz Más
97379dec1d Add braces around try-catch block. Apply clang-format to the function. 2018-10-11 13:40:03 +02:00
Luis Díaz Más
4216dcd0c2 Fix cppcheck issues: knownConditionTrueFalse 2018-10-11 13:40:03 +02:00
Luis Díaz Más
ab35759de8 Fix cppcheck issues: unreachableCode 2018-10-11 13:40:03 +02:00
Luis Díaz Más
54ad1bc91a Fix cppcheck issues: duplicateBreak 2018-10-11 13:40:03 +02:00
Luis Díaz Más
b118192f94 Fix cppcheck issues: redundantAssignment 2018-10-11 13:40:03 +02:00
Luis Díaz Más
c43d998457 Fix cppcheck issues: passedByValue 2018-10-11 13:40:03 +02:00
Luis Díaz Más
989acd18c7 Fix cppcheck issues: uninitMemberVar & uninitVar 2018-10-11 13:40:03 +02:00
Luis Díaz Más
19e740b447 Restore API functions remove in #450 2018-10-10 18:16:57 +02:00
Roberto C. Sánchez
c03f73268f Prevent SIGABRT on excessive subBox length in jp2image.cpp
This fixes CVE-2018-9145
2018-10-10 11:52:39 +02:00
Borchers, Henry Samuel
11e66c6c9e BUILD_INTERFACE for include directories use PROJECT_SOURCE_DIR to allow for being built as a CMake subproject 2018-10-07 19:20:37 +02:00
Dan Čermák
916c535d94 clang-format floatToRationalCast 2018-09-17 10:03:02 +02:00
Dan Čermák
6fd1c5b4bf [types] Fix check for finite numbers on Linux
On Linux we were merely checking whether f is finite, but that does
not cover the case f=NaN.
=> use isfinite instead which checks whether f != inf && f != NaN
2018-09-17 10:02:55 +02:00
Luis Díaz Más
18690f4c54 Provide default and copy constructor for AnyError 2018-09-14 13:20:08 +02:00
Luis Díaz Más
6e4404da81 Move implementation details from tags.cpp to tags_int.cpp 2018-09-14 13:20:08 +02:00
Luis Díaz Más
b9f913d5af Move implementation to .cpp files. Fix more issues related to visibility settings 2018-09-14 13:20:08 +02:00
Luis Díaz Más
e3f975137c Use STATIC_DEFINE to solve issues with OBJECT library 2018-09-14 13:20:08 +02:00
Luis Díaz Más
6ba4081f95 Use CMake-GenerateExportHeader to generate a macro to export symbols
- Delete the hardcoded macros in config.h taking care of that.
2018-09-14 13:20:08 +02:00
Luis Díaz Más
812762cf5a Remove usage of CPLUSPLUS11 2018-09-14 07:43:21 +02:00
Luis Díaz Más
ab6aac054a Remove deprecated code from version source files 2018-09-14 07:43:21 +02:00
Luis Díaz Más
1871ce5acd Remove 'version.hpp' inclusion from places where it is not needed
By removing the inclusion from types.hpp we avoid lots of recompilation
of source files.
2018-09-14 07:43:21 +02:00
Luis Díaz Más
e5bcabd026 Do not print hexadecimal version value when running exiv2 --version 2018-09-14 07:43:21 +02:00
Dan Čermák
67ec90bdab Fix switch value in BigTiffImage::readData
This function extracts a 2, 4 or 8 byte integer from the image and
swaps it according to the current setting. However, it was implicitly
assuming, that it reads the same amount from the image is is
requested.
If that is not the case, e.g. if 8 bytes are requested but
only 4 are read
=> result is created via byteSwap8() which reads 8 bytes
   !but 4 of those are uninitialized!
Using the actually read size fixes this problem.
2018-09-13 11:18:29 +02:00
Dan Čermák
ecf955812d Replace reachable assertions with enforce in BigTiffImage::readData 2018-09-13 11:18:29 +02:00
Dan Čermák
b3199a0720 Fix division by zero in BigTiffImage::printIFD
This fixes #262
2018-09-13 11:18:29 +02:00
Robin Mills
afb98cbc6e Allocate correct amount of memory for the ICC profile 2018-09-13 11:18:29 +02:00
Robin Mills
8ff26931e3 Do not use Image::printStructure() when reading images as this causes security issues. 2018-09-13 11:18:29 +02:00
Luis Díaz Más
1bdbb86b0c Fix warning about implicit conversion to bool 2018-09-12 19:22:31 +02:00
Luis Díaz Más
dba48ac3d9 Fix warning on VS2008 2018-09-12 19:22:31 +02:00
Luis Díaz Más
603692a1d8 Copyright to Exiv2 authors 2018-09-12 19:22:31 +02:00
Luis Díaz Más
c4cc019dff Hide -Wunused-variable issues by using the UNUSED() macro 2018-09-12 19:22:31 +02:00
Luis Díaz Más
94375034e6 Fix -Wsign-compare issues 2018-09-12 19:22:31 +02:00
Luis Díaz Más
18ded9ccf3 Use static version of libcurl.
Note that this will simplify the packaging/deployment
2018-09-12 19:22:31 +02:00
Luis Díaz Más
0bfa0168df Cleanup some of the PACKAGE_XXX variables and rely in the ones given by the project() command 2018-09-12 19:22:31 +02:00
Luis Díaz Más
980f2e9462 Use isnan(f) as an alternative to isinf() on __APPLE__ 2018-09-12 08:11:54 +02:00
Robin Mills
6d1c318fc6 Fixes in PngChunk::readRawProfile 2018-09-11 09:49:59 +02:00
Luis Díaz Más
f5b40f3e82 Fix more issues in PngChunk::readRawProfile 2018-09-11 09:49:59 +02:00
Luis Díaz Más
847da051c0 Fix bug in PngChunk::readRawProfile
- Now it takes into account text.size_ when searching for a newline
char.
2018-09-11 09:49:59 +02:00
Luis Díaz Más
6b77e9f6c8 Do not use std::vector::data() which is not part of c++98 2018-09-10 10:31:00 +02:00
Luis Díaz Más
2ae0cffe18 isinf for Visual Studio versions previous to 2013 2018-09-10 10:31:00 +02:00
Luis Díaz Más
4161099b91 Fix warnings reported by MSVC 2018-09-10 10:31:00 +02:00
Luis Díaz Más
da24df0ba0 snprintf versions for VS versions previous to 2015 2018-09-10 10:31:00 +02:00
Luis Diaz Mas
67e448669e Use -Wno-format-overflow when compiling value.cpp to skip false positive warning 2018-09-10 08:40:55 +02:00
Luis Díaz Más
597b17fff5 Simplify timegm.h and make it usable with MINGW 2018-09-02 19:05:01 +02:00
Dan Čermák
1e23238fa4 Fix memory leak in Params::getopt() 2018-09-01 20:19:45 +02:00
clanmills
3c42fdddeb Fix include <exiv2/exiv2.hpp> to include exiv2/config.h (and consequential changes)
Fix cltest.cpp and version.cpp to report MSVC 2017 in which _MSC_VER == 1910
2018-09-01 20:19:45 +02:00
Robin Mills
74bc0e0535 Changes for cross-platform getopt 2018-09-01 20:19:45 +02:00
Hombre
a226d6a650 Fixing typo in cmakefiles and removing REGEX dependencie for Cygwin 2018-08-31 08:31:20 +02:00
Hombre
28da26f174 Adding MINGW32 toolchain support 2018-08-31 08:31:20 +02:00
Dan Čermák
7d9ed33bde Initialize DataBuf with 0s => fix valgrind error 2018-08-30 16:26:56 +02:00