Commit Graph

186 Commits

Author SHA1 Message Date
clanmills
48afa7548d fix_1329_remove_bigtiff_0.27 2020-09-28 07:43:06 +01:00
tbeu
f61fa2ed9d
Fix write ability flags of PSD files (#1260) 2020-08-10 20:08:12 +02:00
clanmills
d07a1f94f8 fix_547_0.27 2020-05-19 16:13:37 +01:00
clanmills
cc1a6033db fix_1045_0.27 2020-04-06 12:56:43 +01:00
clanmills
18ed65a25f fix_Sony2010e_0.27 Thanks to @sridharb1 2020-03-29 17:55:37 +01:00
Robin Mills
43683f1eff Fix #531 2018-12-09 18:54:40 +01:00
Luis Díaz Más
ae49250942 Check in Image::printIFDStructure if seek and reads are OK 2018-11-06 14:40:36 +01:00
Dan Čermák
962962a8e9 Port Iptc::printStructure & getUshort to slices API
This fixes #211, #210, #209
2018-10-11 14:06:16 +02:00
Dan Čermák
fec6535ae8 [binaryToString] Reimplement using Slices
- reimplement binaryToString:
  - it now accepts a Slice and nothing else
  - it does not return a std::string but instead a proxy object that implements
    operator<< (this should be more efficient, as we do not need to touch the
    heap in most cases)
- addapt unit tests
- replace all occurences with the new API
2018-10-11 14:06:16 +02:00
Dan Čermák
7a7ae7a1df [image_int] Move internal functions into separate translation unit 2018-10-11 14:06:16 +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
603692a1d8 Copyright to Exiv2 authors 2018-09-12 19:22:31 +02:00
Dan Čermák
7d9ed33bde Initialize DataBuf with 0s => fix valgrind error 2018-08-30 16:26:56 +02:00
Dan Čermák
607b19111c [DataBuf] Replace wrong usage of release() with free() 2018-07-28 23:50:33 +02:00
Dan Čermák
efe2ccdcb6 Replaced all hardcoded error codes with ker... constants 2018-02-18 09:28:57 +01:00
tbeu
5b5987a596 Remove obsolete EXIV2_RCSID 2017-11-19 11:17:12 +01:00
tbeu
5df8b01b77 Remove obsolete svn revision 2017-11-19 11:17:11 +01:00
Luis Díaz Más
87a83c89d5
Merge branch 'master' into stringFormat_update 2017-11-12 10:21:33 +01:00
Dan Čermák
36df4bc997 Fixed potential out of bounds file access
This commit adds a out-of-bounds protection in the case that the
extracted values for offset & count are summed up larger than the size
of the file. Also this function checks for overflows before performing
the addition.

This fixes #159
2017-11-10 15:12:55 +01:00
Dan Čermák
cfa5073a2c Added short explanation to internal function stringFormat 2017-11-09 20:38:11 +01:00
Dan Čermák
06cafadf4f Added assertion that call to vsnprintf succeeds 2017-11-09 20:38:11 +01:00
tbeu
c0ea5f4fba Rewrite the reallocation the C++ way
* Fix handling of the return value of vsnprintf
* In C++11 we could use buffer.data instead of &buffer[0]
2017-11-04 21:01:36 +01:00
Michał Walenciak
7e90668011 Adding comment for issue #56 2017-10-02 21:45:05 +02:00
Robin Mills
2f0104879a Merge pull request #81 from piponazo/robinChanges
Robin changes
2017-09-29 10:15:21 +01:00
Luis Díaz Más
8ad49f6d73 Robin changes in sync with master changes 2017-09-28 19:42:57 +02:00
Dan Čermák
74cb5bab13 Fixed wrong brackets: size*count + pad can overflow before the cast
=> Should fix #76 (most of the work has been done by Robin Mills in
   6e3855aed7)

The problem with #76 is the contents of the 26th IFD, with the
following contents:
tag: 0x8649
type: 0x1
count: 0xffff ffff
offset: 0x4974

The issue is the size of count (uint32_t), as adding anything to it
causes an overflow. Especially the expression:
(size*count + pad+20)
results in an overflow and gives 20 as a result instead of
0x100000014, thus the condition in the if in the next line is false
and the program continues to run (until it crashes at io.read).

To properly account for the overflow, the brackets have to be removed,
as then the result is saved in the correctly sized type and not cast
after being calculated in the smaller type.

The brackets have also been removed from bigtiffimage.cpp, where the
same issue is present.
2017-09-27 23:38:49 +02:00
Robin Mills
d8ae4484ae msvc support for bigtiffimage.cpp 2017-09-27 12:24:41 +01:00
clanmills
6e3855aed7 Fix https://github.com/Exiv2/exiv2/issues/55 2017-09-27 09:20:13 +01:00
Michał Walenciak
9acc1c56a7 adding ifd8 and long longs to is8ByteType() 2017-09-24 16:07:26 +02:00
Michał Walenciak
b6e79357de Adding 8-byte swap functions + consts 2017-09-21 18:15:12 +02:00
Michał Walenciak
5ab1a0809d adopt to style 2017-09-21 18:15:12 +02:00
Michał Walenciak
c008ad2403 making tag related functions private 2017-09-21 18:15:12 +02:00
Michał Walenciak
bc6eed0b03 registering new file type 2017-09-21 18:15:12 +02:00
clanmills
21ac4ac61a Test suite changes due to https://github.com/Exiv2/exiv2/pull/68 2017-09-19 10:17:46 +01:00
Michał Walenciak
dff941ad7f Do not print offset when it is used as tag's value 2017-09-18 22:32:52 +02:00
clanmills
d366943297 Refactoring EXV_USE_CURL and EXV_USE_SSH 2017-09-13 16:54:10 +01:00
Michał Walenciak
20582a93c6 Marking members in a proper way. 2017-09-02 08:02:00 +02:00
Michał Walenciak
4e25435afb Changing return type of Image::tagName to std::string 2017-09-02 08:00:07 +02:00
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.
2017-09-01 18:29:51 +02:00
clanmills
d3c2b99385 #1297 Fix submitted. 2017-06-11 11:56:20 +01:00
Robin Mills
77616c3204 #1289 Thanks to Asdiel (AlienSkin) for reporting this and providing a test file. Thanks to Ben for investigation and patch. 2017-04-14 19:42:53 +00:00
Robin Mills
6d5c2c3256 Getting ready to release v0.26 2017-03-08 20:42:28 +00:00
Robin Mills
012c544704 #1268 Fix submitted. Ben and Robin both discovered and fixed this independantly with the same fix! 2017-02-16 18:23:40 +00:00
Robin Mills
dd4faaf831 #1277 Fix submitted. Thank You to Ben for reporting this and providing a patch. 2017-02-14 20:07:12 +00:00
Robin Mills
fe6c71d0fa #1108 exiv2 -pR to dump type == tiffIfd 2016-12-04 12:18:43 +00:00
Robin Mills
49fbd1d761 #1108 Add support to dump MakerNote IFDs with exiv2 -pR 2016-12-04 06:02:44 +00:00
Robin Mills
81265684f0 #1108 Fixed bugs in printStructure(kpsRecursive) handling of RATIONAL data. 2016-11-12 22:08:10 +00:00
Robin Mills
dd39d165e2 #1247 Fix Linux/GCC compilation warning. Added Hanno's file to the test suite. 2016-10-21 19:19:06 +00:00
Robin Mills
021bf5c237 #1247 Thank You Hanno for reporting this and providing a patch. 2016-10-21 17:44:19 +00:00
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. 2016-10-17 16:32:58 +00:00