[SCM] exiv2 packaging branch, master, updated. debian/0.25-3.1-3734-gdcbc29a
Maximiliano Curia
maxy at moszumanska.debian.org
Thu Jul 13 17:47:06 UTC 2017
Gitweb-URL: http://git.debian.org/?p=pkg-kde/kde-extras/exiv2.git;a=commitdiff;h=3811ceb
The following commit has been merged in the master branch:
commit 3811ceb930d083ae9837f0034eb8eb468c39d071
Author: Robin Mills <robin at clanmills.com>
Date: Wed Sep 28 17:26:41 2016 +0000
#1234 Corrections to r4577 based on testing on PPC.
---
src/pgfimage.cpp | 102 +++++++++++++++++++++++++++----------------------------
1 file changed, 51 insertions(+), 51 deletions(-)
diff --git a/src/pgfimage.cpp b/src/pgfimage.cpp
index 15b8358..0d04cd3 100644
--- a/src/pgfimage.cpp
+++ b/src/pgfimage.cpp
@@ -64,55 +64,55 @@ const unsigned char pgfBlank[] = { 0x50,0x47,0x46,0x36,0x10,0x00,0x00,0x00,0x01,
namespace Exiv2 {
- // http://en.wikipedia.org/wiki/Endianness
- static bool isBigEndian()
- {
- union {
- uint32_t i;
- char c[4];
- } e = { 0x01000000 };
-
- return e.c[0]?true:false;
- }
- // static bool isLittleEndian() { return !isBigEndian(); }
-
- static uint32_t byteSwap(uint32_t value,bool bSwap)
- {
- uint32_t result = 0;
- result |= (value & 0x000000FF) << 24;
- result |= (value & 0x0000FF00) << 8;
- result |= (value & 0x00FF0000) >> 8;
- result |= (value & 0xFF000000) >> 24;
- return bSwap ? result : value;
- }
+ // http://en.wikipedia.org/wiki/Endianness
+ static bool isBigEndian()
+ {
+ union {
+ uint32_t i;
+ char c[4];
+ } e = { 0x01000000 };
+
+ return e.c[0]?true:false;
+ }
+ // static bool isLittleEndian() { return !isBigEndian(); }
+
+ static uint32_t byteSwap(uint32_t value,bool bSwap)
+ {
+ uint32_t result = 0;
+ result |= (value & 0x000000FF) << 24;
+ result |= (value & 0x0000FF00) << 8;
+ result |= (value & 0x00FF0000) >> 8;
+ result |= (value & 0xFF000000) >> 24;
+ return bSwap ? result : value;
+ }
/*
- static uint16_t byteSwap(uint16_t value,bool bSwap)
- {
- uint16_t result = 0;
- result |= (value & 0x00FF) << 8;
- result |= (value & 0xFF00) >> 8;
- return bSwap ? result : value;
- }
-
- static uint16_t byteSwap2(Exiv2::DataBuf& buf,size_t offset,bool bSwap)
- {
- uint16_t v;
- char* p = (char*) &v;
- p[0] = buf.pData_[offset];
- p[1] = buf.pData_[offset+1];
- return byteSwap(v,bSwap);
- }
+ static uint16_t byteSwap(uint16_t value,bool bSwap)
+ {
+ uint16_t result = 0;
+ result |= (value & 0x00FF) << 8;
+ result |= (value & 0xFF00) >> 8;
+ return bSwap ? result : value;
+ }
+
+ static uint16_t byteSwap2(Exiv2::DataBuf& buf,size_t offset,bool bSwap)
+ {
+ uint16_t v;
+ char* p = (char*) &v;
+ p[0] = buf.pData_[offset];
+ p[1] = buf.pData_[offset+1];
+ return byteSwap(v,bSwap);
+ }
*/
- static uint32_t byteSwap(Exiv2::DataBuf& buf,size_t offset,bool bSwap)
- {
- uint32_t v;
- char* p = (char*) &v;
- p[0] = buf.pData_[offset];
- p[1] = buf.pData_[offset+1];
- p[2] = buf.pData_[offset+2];
- p[3] = buf.pData_[offset+3];
- return byteSwap(v,bSwap);
- }
+ static uint32_t byteSwap(Exiv2::DataBuf& buf,size_t offset,bool bSwap)
+ {
+ uint32_t v;
+ char* p = (char*) &v;
+ p[0] = buf.pData_[offset];
+ p[1] = buf.pData_[offset+1];
+ p[2] = buf.pData_[offset+2];
+ p[3] = buf.pData_[offset+3];
+ return byteSwap(v,bSwap);
+ }
PgfImage::PgfImage(BasicIo::AutoPtr io, bool create)
: Image(ImageType::pgf, mdExif | mdIptc| mdXmp | mdComment, io)
@@ -157,8 +157,6 @@ namespace Exiv2 {
readPgfMagicNumber(*io_);
uint32_t headerSize = readPgfHeaderSize(*io_);
- headerSize = byteSwap(headerSize,bSwap_);
-
readPgfHeaderStructure(*io_, pixelWidth_, pixelHeight_);
// And now, the most interresting, the user data byte array where metadata are stored as small image.
@@ -322,8 +320,10 @@ namespace Exiv2 {
if (iIo.error()) throw Error(14);
if (bufRead != header.size_) throw Error(20);
- width = byteSwap(header,0,bSwap_);
- height = byteSwap(header,4,bSwap_);
+ DataBuf work(8); // don't disturb the binary data - doWriteMetadata reuses it
+ memcpy (work.pData_,header.pData_,8);
+ width = byteSwap(work,0,bSwap_);
+ height = byteSwap(header,4,bSwap_);
/* NOTE: properties not yet used
byte nLevels = buffer.pData_[8];
--
exiv2 packaging
More information about the pkg-kde-commits
mailing list