266 Commits (cc4d56dec1f8dba1fd38c331567dfee22d85e6bb)

Author SHA1 Message Date
Luis Díaz Más 2b74ad4feb Default initialyze DataBuf::pData_ so that valgrind does not complain 7 years ago
Luis Díaz Más 603692a1d8 Copyright to Exiv2 authors 7 years ago
Luis Díaz Más 19d9ae844b Remove hardcoded CURL_STATICLIB definition in config.h 7 years ago
Luis Díaz Más 4161099b91 Fix warnings reported by MSVC 7 years ago
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
7 years ago
Dan Čermák 9f1a5a1ebb [futils] Change signature of getEnv to take an int
While taking an EnVar as the parameter is more clear it has the
disadvantage, that passing anything outside of the range of the
enumeration is undefined behavior. The compiler could then optimize
the range check in getEnv away (perfectly legal due to UB), leading
to buffer overreads.
7 years ago
Dan Čermák 11df43be78 [types] Apply Safe::abs() in floatToRationalCast & gcd
Also check for infinity in floatToRationalCast as depending on the
compiler special values of floats are converted to either
LONGMAX/LONGMIN or +/-inf
7 years ago
Luis Diaz Mas eb306fdbae Substitute malloc/free with new/delete 7 years ago
Luis Diaz Mas 08cbb0c206 Use header guards instead of pragma once 7 years ago
Luis Diaz Mas 5d76036af5 Add more tests for decoding and encoding URL functions 7 years ago
Luis Diaz Mas eefee8125b to_hex and from_hex removed from API 7 years ago
Luis Diaz Mas 22d9ab82a7 Format futils.h for better readability (also pass clang-format to it) 7 years ago
Luis Diaz Mas c82d875707 Use pragma once instead of guards 7 years ago
Luis Diaz Mas a3c200a23e Remove useless header inclusions 7 years ago
Dan Čermák b12a868454 Add EXV_WARN_UNUSED_RESULT macro & add it to DataBuf::release()
EXV_WARN_UNUSED_RESULT is a conditional macro that expands to either
__attribute__((warn_unused_result)) on gcc & clang or to _Check_return
for MSVC
=> Compiler warns if the return value is ignored
7 years ago
Dan Čermák 1b74db8f51 [types] Add DataBuf::free()
DataBuf::release() easily cause memory leaks, when the return value is
ignored. free() provides the desired behavior, when the internal data should
just be deleted and not used further.
7 years ago
Luis Diaz Mas 69ee165291 msvc: Remove manually generated configuration files for MSVC builds 7 years ago
tbeu 9c507b9d20 Fix function declaration
V762 It is possible a virtual function was overridden incorrectly. See third argument of function 'printStructure' in derived class 'TiffImage' and base class 'Image'. tiffimage.hpp 93
7 years ago
Luis Díaz Más e32323d7c7 Simplify usage of strerror_r.
- Define STRERROR_R_CHAR_P properly on CMake and use it on futils.cpp
- We use now _GNU_SOURCE to determine which version of strerror_r to use
- strError only throws if ret==ERANGE
- Remove STRERROR_R_CHAR_P. It has been never used
- sort defines in config.h.cmake
- Remove EXV_HAVE_DECL_STRERROR_R that is not used anymore
- Remove EXV_HAVE_STRERROR. C++98 always will have it
7 years ago
Luis Díaz Más f86542e5f6 Remove EXV_HAVE_STRTOL 7 years ago
Luis Díaz Más d55b2b1b65 Remove HAVE_STDLIB_H check and replace stdlib.h by cstdlib 7 years ago
Luis Díaz Más aded1965c5 Remove EXV_HAVE_MEMSET 7 years ago
Luis Díaz Más abd28a6a9e Remove EXV_HAVE_STRCHR 7 years ago
Dan Čermák b1a31352b6 Add default constructor for XmpData 7 years ago
Dan Čermák 2bf89f4854 Store pointers to Impl classes in auto_ptr
Pimpl class Impl is stored in raw pointers which are allocated on the heap in
the constructor. However, the constructor can throw an exception resulting in a
memory leak as the destructor is **not** invoked.
=> A smart pointer is however properly deallocated.
7 years ago
Luis Díaz Más bf7047a71b clang-format XmpKey code 7 years ago
Luis Díaz Más 336b759cc0 Remove 'using namespace' from public header 7 years ago
Dan Čermák 22a7a8c2ed Fix outdated documentation of PngImage::doWriteMetadata()
The function does not return anything, it only throws exceptions.
7 years ago
Dan Čermák efe2ccdcb6 Replaced all hardcoded error codes with ker... constants 7 years ago
Dan Čermák d897997b29 Force error code usage to construct a Exiv2::BasicError
changed parameter code_'s type from int to ErrorCode => requires the
usage of the enum constants
7 years ago
Dan Čermák b80fa1b4ed Added error codes from src/error.cpp into an enumeration 7 years ago
Luis Díaz Más f36bea3801 exiv2::getEnv throws std::out_of_range on unexpected EnVar
This change define explicitly the behavior that exiv2::getEnv should have
on response to unexpected inputs.

There are some other minor changes:

- Use _putenv_s for the unit tests on Windows
- Add todo comment
- Remove deprecated note about freeing memory
8 years ago
Luis Díaz Más 8dc3c1f0a0 Replace malloc/free by new/delete. Use const char* for input arg 8 years ago
Luis Díaz Más 8b049922d7 Change exiv2::urlencode signature to return std::string
The goal of this change is to remove the responsibility from the client code to
free the memory of the returned string.
8 years ago
tbeu 5df8b01b77 Remove obsolete svn revision 8 years ago
Luis Díaz Más 4beb08e219 Merge pull request #105 from Kicer86/bigtiff
Work in progress - improvements for bigtiff
8 years ago
Michał Walenciak 2e535d8a27 trying to fix windows build 8 years ago
Luis Díaz Más 5b8894908b Remove all references to EXV_HAVE_REGEX and related code 8 years ago
Luis Díaz Más 8ad49f6d73 Robin changes in sync with master changes 8 years ago
clanmills 6e3855aed7 Fix https://github.com/Exiv2/exiv2/issues/55 8 years ago
clanmills e3298ab5e1 Integrating #55 and #78 8 years ago
Dan Čermák d4e7510f7c Added missing include for INT_MIN & INT_MAX constants 8 years ago
clanmills 8a8f60a4e7 Fix https://github.com/Exiv2/exiv2/issues/55 Thank You, Raphaël Hertzog. 8 years ago
Michał Walenciak b6e79357de Adding 8-byte swap functions + consts 8 years ago
Michał Walenciak c008ad2403 making tag related functions private 8 years ago
Michał Walenciak ca1929d88a adding 64bit types 8 years ago
Michał Walenciak ab27bfab3c introducing getULongLong() 8 years ago
Michał Walenciak bc6eed0b03 registering new file type 8 years ago
clanmills d366943297 Refactoring EXV_USE_CURL and EXV_USE_SSH 8 years ago
Robin Mills d356aaae95 cmakeBuild.cmd --webready working with VS 2005 8 years ago
clanmills 2828b11cf7 Build changes to support EXV_HAVE_REGEX and EXV_HAVE_REGEX_H 8 years ago
Robin Mills 31fc5d2e30 Merge pull request #62 from Kicer86/crash_fix
Fix for crash in multithread environment
8 years ago
Michał Walenciak 20582a93c6 Marking members in a proper way. 8 years ago
Michał Walenciak 4e25435afb Changing return type of Image::tagName to std::string 8 years ago
Michał Walenciak 0d9552aede adding comment 8 years ago
Michał Walenciak ddb87fe0cf Moving static tagName() into Image class to prevent multithread crashes.
static variables inside of tagName() were not protected against multithread access.
It could cause a crash in case of simultaneous initialization of map of tags.
8 years ago
Robin Mills aac74efb8e http://dev.exiv2.org/boards/3/topics/2872 I've removed the troublesome Visual Studio SRWLock code and use CRITICAL_SECTION for all msvc builds. 8 years ago
Robin Mills afba52e042 Remove include tags_int.hpp from include/exiv2/*video.hpp files 8 years ago
Luis Diaz Mas 6be5278dd2 Fix inclusion of file 8 years ago
Luis Díaz Más 1c03767391 Move inclusion of private header from .hpp to .cpp (not needed in the .hpp) 8 years ago
clanmills 935421c855 Refactoring autotools to support ADOBE_XMPSDK (Work in Progress) 8 years ago
clanmills 62d24d3c77 Correction to previous commit. 8 years ago
clanmills 2e816165ea Changes to autotools to support C++11 (work in progress) 8 years ago
clanmills df53123cfb Restoring exv_msvc.h for use by msvc/exiv2/libexiv2.vcproj 8 years ago
Luis Díaz Más ea0c4899ff Remove exv_msvc.h. It has the same content than exv_conf.h and we were getting lot of warnings when compiling with MSVC 8 years ago
Luis Diaz Mas 22efdffd1d Use #ifdef instead of #if for EXV_HAVE_REGEX 8 years ago
Luis Diaz Mas 8c323cad04 Remove EXV_HAVE_STDINT_H definition that was causing warnings 8 years ago
Luis Diaz Mas db5ce5ed82 Remove few unused variables declared in CMakeChecks.txt 8 years ago
Luis Diaz Mas 367d3b8a1e Remove unused HAVE_WCHAR_H variable 8 years ago
Luis Diaz Mas 2887a0dbad Remove unused HAVE_VPRINTF variable 8 years ago
Luis Diaz Mas d85a7c6751 Remove unused HAVE_SYS_TIME_H and TM_IN_SYS_TIME variables 8 years ago
Luis Diaz Mas 1a34a55383 Handle HAVE_STRINGS_H variable in the new cmake file 8 years ago
Luis Diaz Mas bfb849859a Remove unused variable HAVE__BOOL 8 years ago
Luis Diaz Mas 72e12cdbf2 Remove unused variable HAVE_REALLOC 8 years ago
Luis Diaz Mas d8ada323e3 Remove unused MALLOC variables 8 years ago
Luis Diaz Mas 09fc98eebf Handle all the PACKAGE_XXX variables in the new cmake file 8 years ago
Luis Diaz Mas 485891b991 Remove unused definition HAVE_ALARM 8 years ago
clanmills a9c9e8ff8e Remove svn_version.h 8 years ago
Robin Mills bf473ae718 #1292 Dimitri: Thank You for reporting this and providing the patch. 8 years ago
Robin Mills 559ace375b #1291 Reverting change in r4763 relating to windows.h as they break the Cygwin build. Retain changes in exiv2/exiv2.hpp and exv_msvc.h 8 years ago
Robin Mills f36cccefa2 #1291 include header simplification 8 years ago
Robin Mills fb24a572c6 #1291 Thank you to T Modes for reporting this and providing this patch. 8 years ago
Robin Mills 73572aa54d #1291 Fix submitted. Thank You to T Modes for reporting this issue. 8 years ago
Robin Mills 67859f4f4e #1175 I'm going to accept the recommendation to change BasicIo::size() to return size_t. This passes the test suite. The only "ripple" outside of basicio is to iotest.cpp. This change enables several casts to be removed. 8 years ago
Robin Mills 73047ce568 #1279 Correction to r4748 which broke the CMake build. 8 years ago
Robin Mills 54408bac2f #1279 Move src/ini_int.hpp to include/exiv2/ini.hpp to reveal class Exiv2:INIReader in API 8 years ago
Robin Mills 192a2a83cf #1279 Cleaned up doxygen warnings for doc and website. 8 years ago
Robin Mills 199820576d #1279 Work in Progress: API Documentation (doxygen) 8 years ago
Robin Mills 11993b3b55 #1271 Thanks to Ben for reporting this and providing the patch. 8 years ago
Robin Mills 85eb0da9d1 #1279 Bump EXIV2_MINOR_VERSION in include/exiv2/version.hpp 8 years ago
Robin Mills 6d5c2c3256 Getting ready to release v0.26 8 years ago
Robin Mills 54cfc47346 class RWLock should not be in the Exiv2::Internal namespace 8 years ago
Robin Mills 2ebacb6b0b #1272 Use in-memory temporary files. 8 years ago
Robin Mills 9f06ff2971 #1272 Submitting modified version of Ben's patch. 8 years ago
Robin Mills 5392ada8f4 #1273 Thanks to A Wilcox for reporting this and providing the patch. 9 years ago
Robin Mills 81265684f0 #1108 Fixed bugs in printStructure(kpsRecursive) handling of RATIONAL data. 9 years ago
Robin Mills 0c57b55035 #1230 Fix msvc build breaker when building using configure.bat -W (with WebReady) 9 years ago
Robin Mills 03ca00fc1e #1244. Correction to r4637. Added bigBlock_(NULL) to BasicIo::BasicIo(). 9 years ago
Robin Mills a057af1616 #1244. Removing experimental APIs introduced by r4637. I submitted those APIs just to retain the code somewhere. I have no plan to release such as API. 9 years ago
Robin Mills f5956d5db2 #1230 Fixes to read tiff with web-ready. Includes the BasicIo expiremental API readUnmarked() and markRead() which I will remove later. 9 years ago