384 Commits (d59e1433c03e64ea3e7de7ddf09c0b02175c4bc4)

Author SHA1 Message Date
Luis Díaz Más b0318c36be
Upgrade C++ standard to c++17 (#2052)
* Enable C++17 and use new inline specifier for const variable members

* Silence deprecation warning on MSVC

* Disable samples by default

* improvements after review
3 years ago
Kevin Backhouse 891f58aa85
Fix bug in loop. It wasn't iterating over the elements of dateStrings as intended. 4 years ago
Kevin Backhouse 9ff72e5ca5
Make offset=0 the default parameter. 4 years ago
Kevin Backhouse c9d0cf3643
Make fields of DataBuf private. 4 years ago
Rosen Penev e7eddfc2f5 use more emplace_back
Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev f3fcffd6e6 remove most usages of std::make_pair
Better alternatives exist with C++11.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Robin Mills c82c4d0420
fix_1516_include_path 4 years ago
Christoph Hasse 7251a96da6 remove exv_grep_keys_t type alias 4 years ago
Kevin Backhouse dc2c77ce81
Safer std::vector indexing. 4 years ago
Kevin Backhouse b13585a697
Fix code scanning alert: "Multiplication result converted to larger type".
9284b58bfc/samples/Jzon.cpp (L61-L61)
4 years ago
Kevin Backhouse b16cd52b88 Replace sprintf with snprintf. 4 years ago
Kevin Backhouse 2b84f4bd64
fix: zero initialize local variables. (#1743)
* Zero initialize local variables.

* Initialize xmpID_
4 years ago
Robin Mills 6452a9ce36 Fixing typos. 4 years ago
Robin Mills 739673335c Forgive "SHORT or LONG" tags. Add test code. 4 years ago
Robin Mills fd2ab89de5 exifprint_lint 4 years ago
Luis Díaz Más f30022d73d
Fix issues detected with PVS-Studio + other little improvements (#1689)
* avoid re-declaration of constant variables

* Replace pthreads critical section with std::mutex

* ci - better naming

* cmake - increase minimum version to 3.11. Use project DESCRIPTION

* fix - do not treat string::find() return type as bool

* remove conditions that were always true

* remove condition that were always false

* Remove EXV_HAVE_GMTIME_R which is not used anymore

* pixelWidth_ was inherited from Exiv2::Image

The width & height variables in the TiffImage class need to be mutable
to be able to change their values on the getters pixelHeight() and
pixelWidth() ... Do not ask me why ...

* Remove superfluous if

* pvs:V766 item with identical key added already

* pvs:V730 not all members were initialized (time)

* pvs:V730 not all members are initialized

* pvs:v668 no point in testing pointer against null after new

* pvs:V1048 variable assigned the same value

* replace c-style dynamic vector with std one

* pvs:547 fakeData is always true

* Remove useless constructor in derived class

* pvs:V690 modern way to disable copy-ctor

* Replace malloc/free with new/delete. No need to check for null

* pvs:V1028 cast operands and not result

* Remove custom MIN/MAX functions

* pvs:V595 pointer used before verified against null

* pvs: index used before being checked

* pvs:V1028 possible overflow. Cast operands

* pvs:v575 potential null pointer passed to other functions

* pvs:V547 deal with always true/false expressions

* pvs:V560 part of conditional expressions always false or true

* pvs:V701 possible break in realloc -> move to std::vector

* Make some classes 'final'

* Replace sprintf with std::to_string()

* fix compilation on windows
4 years ago
Rosen Penev 2c57f214c5 clang-tidy: use nullptr
Found with modernize-use-nullptr

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 86c71ae6c3 clang-tidy: avoid global non const variables
Found with cppcoreguidelines-avoid-non-const-global-variables

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev c7a41230f0 clang-tidy: remove pointless member init
Found with readability-redundant-member-init

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 7179300b7f clang-tidy: use dynamic cast
Found with cppcoreguidelines-pro-type-static-cast-downcast

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 8d501fcf24 clang-tidy: no else after return
Found with readability-else-after-return

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev ceed79c95e Jzon: algorithm conversions
Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 4d2bc3c752 some range loop conversions
Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 743da1a564 clang-tidy: use C++ casting
Found with google-readability-casting

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 8dbc699858 clang-tidy: add missing explicit
Found with google-explicit-constructor

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev ff39473c18 clang-tidy: convert to static
Found with readability-convert-member-functions-to-static

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 6da49fd29b more constexpr
Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev cdbee3c26c clang-tidy: init in member initializer
Found with cppcoreguidelines-prefer-member-initializer

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 8564d0b394 clang-tidy: pass by value
Found with modernize-pass-by-value

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev f9d394adf0 clang-tidy: run through performance checks
Found with performance*

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev b8712188bb clang-tidy: use auto
Found with modernize-use-auto

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 8e52032ee0 clang-tidy: range loop conversions
Found with: modernize-loop-convert

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev c73dfa0106 clang-tidy: use uppercase numeric literals
Found with readability-uppercase-literal-suffix

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev fdf9d3799c clang-tidy: don't use else after return
Found with llvm-else-after-return

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Luis Diaz Mas e87424b5e0 Add CTest support 4 years ago
Rosen Penev 4aa5566cf6 clang-tidy: make several member functions const
Found with readability-make-member-function-const

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 1b9b77c51f clang-tidy: add ending namespace comments
Found with google-readability-namespace-comments

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev fddb035106 clang-tidy: remove pointless const
Found with readability-avoid-const-params-in-decls

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 80595f8468 clang-tidy: remove duplicate public
Found with readability-redundant-access-specifiers

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 5d716c7df4 clang-tidy: empty() conversions
Found with readability-container-size-empty

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 9642e3cceb clang-tidy: remove pointless string init
Found with readability-redundant-string-init

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 143a1fbbe2 clang-tidy: don't use string compare
Found with readability-string-compare

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 8337462032 clang-tidy: use empty() instead of comparing size
Found with readability-container-size-empty

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev af7b2430c5 clang-tidy: use override
Found with modernize-use-override

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 15f0a600ed clang-tidy: use default member init
Found with modernize-use-default-member-init

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev bd6a996181 clang-tidy: use using
Found with modernize-use-using

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev b3040da54c clang-tidy: don't check for NULL with delete
Found with readability-delete-null-pointer

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 1dc1186760 clang-tidy: simplify boolean expressions
Found with readability-simplify-boolean-expr

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 8128716287 clang-tidy: use = default
Found with modernize-use-equals-default

Ran through git clang-format

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 4ceb325c8f clang-tidy: range for loop conversions
Found with modernize-loop-convert

Ran through git clang-format.

Also removed several questionable loops and replaced with simpler
algorithms.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Rosen Penev 5a4c3cd057 convert Pair to std::pair
This is C++11 now.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Luis Díaz Más 582edd399c cmake: ignore PDBs warnings on Win/Debug/Static buils 4 years ago
Rosen Penev 84220855b2 clang-tidy: use = delete
Found with modernize-use-equals-delete

Signed-off-by: Rosen Penev <rosenp@gmail.com>
4 years ago
Luis Díaz Más 53f18cf408 conan: use cmake_paths generator instead of cmake
We also upgraded the xcode version on Travis-CI
4 years ago
Luis Díaz Más f601d23d5e conan: update conan recipe versions 4 years ago
Luis Díaz Más c33c6abc82 Remove useless explicit constructor 4 years ago
Luis Díaz Más f85f7f717a Replace many of the iterators types with auto 4 years ago
Luis Díaz Más 75e4bd9059 Remove rest of useless typedefs from datasets.hpp 4 years ago
Luis Díaz Más 83dda6ccd7 Fix warnings related to -Wdeprecated-copy 4 years ago
Luis Díaz Más 94b87a8dec Remove deprecated SSH support 4 years ago
Luis Díaz Más 0bbaa6eff3 cpp: Replace auto_ptr by unique_ptr 4 years ago
Robin Mills fe1c338fc2
Merge pull request #1504 from eokeeffe/0.27-maintenance
metacopy -x parameter not in optstring
4 years ago
Robin Mills 4a8d365e80 fix_1508_enableBMMF_effort2 4 years ago
Robin Mills 9da2aed5d2 Use the documented 5 line prolog in every sample application. Tidy up sample prologs and header code. 4 years ago
evanokeeffe 160ee8ba9b found a bug in metacopy, the -x parameter wasn't in the optstring. rectified that 4 years ago
Robin Mills d632988bbd Massive code prolog cleanup. 4 years ago
Lemures Lemniscati 77ef37fe79 samples/xmpprint.cpp: Fix typos 5 years ago
Miloš Komarčević 5e92d5e078 Fix easyaccess-test 5 years ago
Miloš Komarčević 95c0df6c14 Test cover for added easyaccess methods 5 years ago
Robin Mills da1b02d644 fix_1268_GPSProcessingMethod 5 years ago
Robin Mills 7bf40a2408 fix_1211_c++11_0.27. I'll explain this in the PR. 5 years ago
clanmills f24f24e026 Documentation updates for v0.27.3 RC2 5 years ago
clanmills 2f2bf69f6c README.md General revision. Mostly simplifying "4 Test Suite". 5 years ago
Robin Mills c64f2e8ea1 iotest.cpp polishing. 5 years ago
Robin Mills ef56e5b61e Fix comment typo 5 years ago
clanmills 158fba1b99 Fix blocksize in iotest.cpp. 5 years ago
clanmills 32b9a2dfa1 Change EXIV2_HTTP default to http://localhost to keep msvc build happy. iotest.cpp modified to compile with msvc. 5 years ago
Robin Mills 7e55f5d5be
Merge branch '0.27-maintenance' into http_iotest_0.27 5 years ago
clanmills 5aa09915ea Documentation update. Fixed typo in comment in functions.source 5 years ago
clanmills 7956aa0ad9 See #1029 Added option to samples/iotest.cpp to specify blocksize for remote copy. 5 years ago
Robin Mills 3d0e05f40d
Merge branch '0.27-maintenance' into http_iotest_0.27 5 years ago
clanmills c0ec4cf6a4 Polishing iotest.sh by moving functions start/closeHttpServer to functions.source. Updated documentation. 5 years ago
clanmills 037849ea9e Add optional parameter to iotest.cpp to create the input file by copying from a remote location. 5 years ago
clanmills e15c483e29 Use toString() instead of value() to write to std::cout. https://github.com/Exiv2/exiv2/issues/901#issuecomment-627872855 5 years ago
clanmills 43b06b6814 Don't allow binary into the output stream! 5 years ago
Robin Mills a1abe21a71 Discussion: https://github.com/Exiv2/exiv2/issues/1200#issuecomment-623975537 5 years ago
clanmills 8f5b740270 put them back. 5 years ago
clanmills 79b37ec3aa Putting geotag.cpp back into the product (git strikes again) 5 years ago
Robin Mills cd9ee99567
Delete geotag.cpp 5 years ago
clanmills 63a13e8620 Adding option -DEXIV2_BUILD_USE_C++11 5 years ago
clanmills d994161e80 Added option -remove to samples/geotag.cpp 5 years ago
clanmills 759ce9fffe fix_1046_sample_geotag Take advantage of fix to #1046 in samples/geotag.cpp 5 years ago
Robin Mills df04671976 Enforce cxx_std_98 in samples, unit_tests, and exiv2 application (to eliminate 2305 GCC unique_ptr warnings) 5 years ago
Robin Mills f7c14e62fb taglist_unexpected_arg_0.27 5 years ago
Luis Diaz Mas 215099e977 Fix in largeiptc-test 5 years ago
clanmills 13565be3d2 Change for solaris. 5 years ago
clanmills e62bd8b94e fix_1158_0.27 5 years ago
clanmills 0eabfc4053 Adding CPP changes 5 years ago
Robin Mills 7844b11e4b
[xmpsdk] Add XMP Initialisation/Cleanup code to all main() programs
- update documentation
- Removed redundant calls to Exiv2::XmpParser::terminate() (legacy of our
  discusssion with @tester0077).
- this fixes #976
6 years ago
Luis Díaz Más 398139ec54
Usage of EXIT_SUCCESS and EXIT_FAILURE 6 years ago