<pre style='margin:0'>
Ryan Carsten Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/a4588a21e2d8b7fa08830050b05f45cd3ee2d895">https://github.com/macports/macports-ports/commit/a4588a21e2d8b7fa08830050b05f45cd3ee2d895</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new a4588a21e2d TinyEXIF: New port, version 1.0.2
</span>a4588a21e2d is described below

<span style='display:block; white-space:pre;color:#808000;'>commit a4588a21e2d8b7fa08830050b05f45cd3ee2d895
</span>Author: Ryan Carsten Schmidt <ryandesign@macports.org>
AuthorDate: Mon Dec 2 04:46:28 2024 -0600

<span style='display:block; white-space:pre;color:#404040;'>    TinyEXIF: New port, version 1.0.2
</span>---
 graphics/TinyEXIF/Portfile                |  46 ++++++++++++
 graphics/TinyEXIF/files/cstdint.patch     |  12 +++
 graphics/TinyEXIF/files/std-istream.patch | 120 ++++++++++++++++++++++++++++++
 graphics/TinyEXIF/files/version.patch     |  28 +++++++
 4 files changed, 206 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/TinyEXIF/Portfile b/graphics/TinyEXIF/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..3c4f99ba5d0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/TinyEXIF/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,46 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem          1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           cmake 1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        cdcseacave TinyEXIF 1.0.2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  8676b40d8dfeaf0d5cc34f5d7ef6b5ef42da249e \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  427e02c38ee29d87bc82d08545d9f9a68c603af16e0b35f6807a4a8e63c14b86 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    7710738
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories          graphics
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers         {ryandesign @ryandesign} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license             BSD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         tiny ISO-compliant C++ EXIF and XMP parsing library for JPEG
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description    ${name} is a tiny, lightweight C++ library for parsing the \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    metadata existing inside JPEG files.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.tarball_from archive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib         port:tinyxml2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          cstdint.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    std-istream.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    version.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set v [split ${version} .]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set major [lindex ${v} 0]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set minor [lindex ${v} 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    set patch [lindex ${v} 2]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    reinplace -W ${worksrcpath} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        -E "s/@MAJOR@/${major}/g;s/@MINOR@/${minor}/g;s/@PATCH@/${patch}/g" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        CMakeLists.txt \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        TinyEXIF.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.cxx_standard \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    2011
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args      -DBUILD_DEMO=OFF \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DBUILD_SHARED_LIBS=ON \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    -DBUILD_STATIC_LIBS=ON
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/TinyEXIF/files/cstdint.patch b/graphics/TinyEXIF/files/cstdint.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..2907bc84508
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/TinyEXIF/files/cstdint.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,12 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Include cstdint
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/cdcseacave/TinyEXIF/commit/ccd676f1b91d59da40b4f9c1edda4408fb65e62e
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- TinyEXIF.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ TinyEXIF.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -34,6 +34,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef __TINYEXIF_H__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define __TINYEXIF_H__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <cstdint>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <string>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <vector>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/TinyEXIF/files/std-istream.patch b/graphics/TinyEXIF/files/std-istream.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..6d2f5d423f1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/TinyEXIF/files/std-istream.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,120 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Add constructor that takes generic std::istream objects
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/cdcseacave/TinyEXIF/commit/d75f772ffa330b28539a0c6493803c9205b281a6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- TinyEXIF.cpp.orig      2019-01-16 07:26:30.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ TinyEXIF.cpp   2024-12-02 05:58:01.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -39,6 +39,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <cfloat>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <vector>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <algorithm>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <iostream>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef _MSC_VER
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <tchar.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -332,6 +333,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ EXIFInfo::EXIFInfo(EXIFStream& stream) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   parseFrom(stream);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++EXIFInfo::EXIFInfo(std::istream& stream) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  parseFrom(stream);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ EXIFInfo::EXIFInfo(const uint8_t* data, unsigned length) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   parseFrom(data, length);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -838,6 +842,36 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return app1s();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++int EXIFInfo::parseFrom(std::istream& stream) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  class EXIFStdStream : public EXIFStream {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          EXIFStdStream(std::istream& stream)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  : stream(stream) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  // Would be nice to assert here that the stream was opened in binary mode, but
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  // apparently that's not possible: https://stackoverflow.com/a/224259/19254
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          bool IsValid() const override {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  return !!stream;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          const uint8_t* GetBuffer(unsigned desiredLength) override {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  buffer.resize(desiredLength);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  if (!stream.read(reinterpret_cast<char*>(buffer.data()), desiredLength))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                          return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  return buffer.data();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          bool SkipBuffer(unsigned desiredLength) override {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  return (bool)stream.seekg(desiredLength, std::ios::cur);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  private:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          std::istream& stream;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          std::vector<uint8_t> buffer;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  };
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  EXIFStdStream streamWrapper(stream);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  return parseFrom(streamWrapper);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int EXIFInfo::parseFrom(const uint8_t* buf, unsigned len) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   class EXIFStreamBuffer : public EXIFStream {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- TinyEXIF.h.orig        2024-12-02 06:00:04.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ TinyEXIF.h     2024-12-02 06:00:04.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -101,6 +101,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   EXIFInfo();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   EXIFInfo(EXIFStream& stream);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  EXIFInfo(std::istream& stream); // NB: the stream must have been opened in binary mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   EXIFInfo(const uint8_t* data, unsigned length);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   // Parsing function for an entire JPEG image stream.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -111,6 +112,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   // RETURN:  PARSE_SUCCESS (0) on success with 'result' filled out
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   //          error code otherwise, as defined by the PARSE_* macros
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int parseFrom(EXIFStream& stream);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  int parseFrom(std::istream& stream); // NB: the stream must have been opened in binary mode
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   int parseFrom(const uint8_t* data, unsigned length);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   // Parsing function for an EXIF segment. This is used internally by parseFrom()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- main.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ main.cpp
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9,27 +9,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <vector>   // std::vector
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <iomanip>  // std::setprecision
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-class EXIFStreamFile : public TinyEXIF::EXIFStream {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-public:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  explicit EXIFStreamFile(const char* fileName)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          : file(fileName, std::ifstream::in|std::ifstream::binary) {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  bool IsValid() const override {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          return file.is_open();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  const uint8_t* GetBuffer(unsigned desiredLength) override {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          buffer.resize(desiredLength);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          if (!file.read((char*)buffer.data(), desiredLength))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-                  return NULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          return buffer.data();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  bool SkipBuffer(unsigned desiredLength) override {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-          return (bool)file.seekg(desiredLength,std::ios::cur);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-private:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  std::ifstream file;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  std::vector<uint8_t> buffer;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-};
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int main(int argc, const char** argv)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   if (argc != 2) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -37,9 +16,9 @@ int main(int argc, const char** argv)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           return -1;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  // read entire image file
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  EXIFStreamFile stream(argv[1]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  if (!stream.IsValid()) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  // open a stream to read just the necessary parts of the image file
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  std::ifstream stream(argv[1], std::ios::binary);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if (!stream) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           std::cout << "error: can not open '" << argv[1] << "'\n";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           return -2;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   }
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/TinyEXIF/files/version.patch b/graphics/TinyEXIF/files/version.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..29e1ebe3ec9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/TinyEXIF/files/version.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,28 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Fix version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/cdcseacave/TinyEXIF/pull/18
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- CMakeLists.txt.orig    2019-01-16 07:26:30.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ CMakeLists.txt 2024-12-02 05:50:45.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -10,7 +10,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ################################
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # set lib version here
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-set(GENERIC_LIB_VERSION "1.0.1")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++set(GENERIC_LIB_VERSION "@MAJOR@.@MINOR@.@PATCH@")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set(GENERIC_LIB_SOVERSION "1")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ################################
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- TinyEXIF.h.orig        2019-01-16 07:26:30.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ TinyEXIF.h     2024-12-02 05:51:01.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -38,9 +38,9 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <string>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <vector>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define TINYEXIF_MAJOR_VERSION 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define TINYEXIF_MINOR_VERSION 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define TINYEXIF_PATCH_VERSION 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TINYEXIF_MAJOR_VERSION @MAJOR@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TINYEXIF_MINOR_VERSION @MINOR@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define TINYEXIF_PATCH_VERSION @PATCH@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef _MSC_VER
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #   ifdef TINYEXIF_EXPORT
</span></pre><pre style='margin:0'>

</pre>