diff --git a/.github/workflows/on_PR_linux_special_buils.yml b/.github/workflows/on_PR_linux_special_builds.yml similarity index 100% rename from .github/workflows/on_PR_linux_special_buils.yml rename to .github/workflows/on_PR_linux_special_builds.yml diff --git a/CODING_GUIDELINES.md b/CODING_GUIDELINES.md index 1f1ce3c6ff..e8e921287d 100644 --- a/CODING_GUIDELINES.md +++ b/CODING_GUIDELINES.md @@ -18,7 +18,7 @@ Coding Guidelines - All new code that is added must be resistant to integer overflows, thus if you multiply, add, subtract, divide or bitshift integers you must ensure that no overflow can occur. Please keep in mind that signed integer overflow is undefined behavior, thus you must check for overflows before performing the arithmetic operation, otherwise the compiler is free to optimize your check after the overflow away (this has happened already). - All new code must be resistant to buffer overflows. Thus before you access arrays a range check must be performed. - Distrust any data that you extract from images or from external sources. E.g. if the metadata of an image gives you an offset of another information inside that file, do not assume that this offset will not result in an out off bounds read. -- New code must not assume the endianes and the word size of the system it is being run on. I.e. don't assume that `sizeof(int) = 8` or that the following will work: +- New code must not assume the endianness and the word size of the system it is being run on. I.e. don't assume that `sizeof(int) = 8` or that the following will work: ```cpp const uint32_t some_var = get_var(); const uint16_t lower_2_bytes = (const uint16_t*) &some_var; diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 68d5b3ae3b..37927bd028 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -64,7 +64,7 @@ Once you have a GitHub login: $ git fetch exiv2_upstream master $ git checkout -b my-new-feature exiv2_upstream/master --no-track - NB: This is an important step to avoid draging in old commits! + NB: This is an important step to avoid dragging in old commits! 5. Configure the project and check that it builds (if not, please report a bug): diff --git a/GIT_GUIDELINES.md b/GIT_GUIDELINES.md index 020a365b60..d332d17e9c 100644 --- a/GIT_GUIDELINES.md +++ b/GIT_GUIDELINES.md @@ -16,7 +16,7 @@ A commit message can look like this: - Specify concrete ubuntu and mac versions - Use latest conan version - Fix the profiles for linux and mac -- Use new version of expat (avilable in conan-center) +- Use new version of expat (available in conan-center) - Install urllib3 as suggested in python guidelines - Use virtualenv with python3 ``` diff --git a/README-SAMPLES.md b/README-SAMPLES.md index 3430720b1b..7d30b9462b 100644 --- a/README-SAMPLES.md +++ b/README-SAMPLES.md @@ -21,7 +21,7 @@ The following programs are build and installed in /usr/local/bin. | _**addmoddel**_ | Demonstrates Exiv2 library APIs to add, modify or delete metadata | [addmoddel](#addmoddel) | [addmoddel.cpp](samples/addmoddel.cpp) | | _**exifcomment**_ | Set Exif.Photo.UserComment in an image | [exifcomment](#exifcomment) | [exifcomment.cpp](samples/exifcomment.cpp) | | _**exifdata**_ | Prints _**Exif**_ metadata in different formats in an image | [exifdata](#exifdata) | [exifdata.cpp](samples/exifdata.cpp) | -| _**exifprint**_ | Print _**Exif**_ metadata in images
Miscelleous other features | [exifprint](#exifprint)| [exifprint.cpp](samples/exifprint.cpp) | +| _**exifprint**_ | Print _**Exif**_ metadata in images
Miscellaneous other features | [exifprint](#exifprint)| [exifprint.cpp](samples/exifprint.cpp) | | _**exifvalue**_ | Prints the value of a single _**Exif**_ tag in a file | [exifvalue](#exifvalue) | [exifvalue.cpp](samples/exifvalue.cpp) | | _**exiv2**_ | Utility to read and write image metadata, including Exif, IPTC, XMP, image comments, ICC Profile, thumbnails, image previews and many vendor makernote tags.
This is the primary test tool used by Team Exiv2 and can exercise almost all code in the library. Due to the extensive capability of this utility, the APIs used are usually less obvious for casual code inspection. | [exiv2 manpage](exiv2.md)
[https://exiv2.org/sample.html](https://exiv2.org/sample.html) | | | _**exiv2json**_ | Extracts data from image in JSON format.
This program also contains a parser to recursively parse Xmp metadata into vectors and objects. | [exiv2json](#exiv2json) | [exiv2json.cpp](samples/exiv2json.cpp) | @@ -162,7 +162,7 @@ Option: all | exif | iptc | xmp | filesystem This program dumps metadata from an image in JSON format. _Code: [exiv2json.cpp](samples/exiv2json.cpp)_ -exiv2json has a recursive parser to encode XMP into Vectors and Objects. XMP data is XMP and can contain XMP `Bag` and `Seq` which are converted to JSON Objects and Arrays. Exiv2 presents data in the format: [Family.Group.Tagname](exiv2.md#exiv2_key_syntax). For XMP, results in "flat" output such such as: +exiv2json has a recursive parser to encode XMP into Vectors and Objects. XMP data is XMP and can contain XMP `Bag` and `Seq` which are converted to JSON Objects and Arrays. Exiv2 presents data in the format: [Family.Group.Tagname](exiv2.md#exiv2_key_syntax). For XMP, results in "flat" output such as: ``` $ curl --silent -O https://clanmills.com/Stonehenge.jpg @@ -211,7 +211,7 @@ $ Usage: geotag {-help|-version|-dst|-dryrun|-ascii|-verbose|-adjust value|-tz value|-delta value}+ path+ ``` -Geotag reads one or more GPX files and adds GPS Tages to images. _Code: [geotag.cpp](samples/geotag.cpp)_ +Geotag reads one or more GPX files and adds GPS Tags to images. _Code: [geotag.cpp](samples/geotag.cpp)_ If the path is a directory, geotag will read all the files in the directory. It constructs a time dictionary of position data, then updates every image with GPS Tags. @@ -478,7 +478,7 @@ Test access to preview images #### remotetest ``` -Usage: remotetest remotetest file {--nocurl | --curl} +Usage: remotetest file {--nocurl | --curl} ``` Tester application for testing remote i/o. diff --git a/README.md b/README.md index 1a9d2e70b2..72db7c0053 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ | **CI Status:** | | | |:-- |:-- |:-- | -| [![Basic CI for all platforms on push](https://github.com/Exiv2/exiv2/actions/workflows/on_push_BasicWinLinMac.yml/badge.svg?branch=main)](https://github.com/Exiv2/exiv2/actions/workflows/on_push_BasicWinLinMac.yml) | [![CI for different Linux distributions](https://github.com/Exiv2/exiv2/actions/workflows/nightly_Linux_distributions.yml/badge.svg?branch=main)](https://github.com/Exiv2/exiv2/actions/workflows/nightly_Linux_distributions.yml) | [![Linux Special Builds on PRs](https://github.com/Exiv2/exiv2/actions/workflows/on_PR_linux_special_buils.yml/badge.svg)](https://github.com/Exiv2/exiv2/actions/workflows/on_PR_linux_special_buils.yml) | +| [![Basic CI for all platforms on push](https://github.com/Exiv2/exiv2/actions/workflows/on_push_BasicWinLinMac.yml/badge.svg?branch=main)](https://github.com/Exiv2/exiv2/actions/workflows/on_push_BasicWinLinMac.yml) | [![CI for different Linux distributions](https://github.com/Exiv2/exiv2/actions/workflows/nightly_Linux_distributions.yml/badge.svg?branch=main)](https://github.com/Exiv2/exiv2/actions/workflows/nightly_Linux_distributions.yml) | [![Linux Special Builds on PRs](https://github.com/Exiv2/exiv2/actions/workflows/on_PR_linux_special_builds.yml/badge.svg)](https://github.com/Exiv2/exiv2/actions/workflows/on_PR_linux_special_builds.yml) | | [![Linux-Ubuntu Matrix on PRs](https://github.com/Exiv2/exiv2/actions/workflows/on_PR_linux_matrix.yml/badge.svg)](https://github.com/Exiv2/exiv2/actions/workflows/on_PR_linux_matrix.yml) | [![Mac Matrix on PRs](https://github.com/Exiv2/exiv2/actions/workflows/on_PR_mac_matrix.yml/badge.svg)](https://github.com/Exiv2/exiv2/actions/workflows/on_PR_mac_matrix.yml) | [![Win Matrix on PRs](https://github.com/Exiv2/exiv2/actions/workflows/on_PR_windows_matrix.yml/badge.svg)](https://github.com/Exiv2/exiv2/actions/workflows/on_PR_windows_matrix.yml) |
@@ -197,7 +197,7 @@ CMake will detect libiconv of all UNIX like systems including Linux, macOS, UNIX The library libiconv is a GNU library and we do not recommend using libiconv with Exiv2 when building with Visual Studio. -Exiv2 includes the file cmake/FindIconv.cmake which contains a guard to prevent CMake from finding libiconv when you build with Visual Studio. This was added because of issues reported when Visual Studio attempted to link libconv libraries installed by Cygwin, or MinGW or gnuwin32. [https://github.com/Exiv2/exiv2/issues/1250](https://github.com/Exiv2/exiv2/issues/1250) +Exiv2 includes the file cmake/FindIconv.cmake which contains a guard to prevent CMake from finding libiconv when you build with Visual Studio. This was added because of issues reported when Visual Studio attempted to link libiconv libraries installed by Cygwin, or MinGW or gnuwin32. [https://github.com/Exiv2/exiv2/issues/1250](https://github.com/Exiv2/exiv2/issues/1250) There are build instructions about Visual Studio in libiconv-1.16/INSTALL.window require you to install Cygwin. There is an article here about building libiconv with Visual Studio. [https://www.codeproject.com/Articles/302012/How-to-Build-libiconv-with-Microsoft-Visual-Studio](https://www.codeproject.com/Articles/302012/How-to-Build-libiconv-with-Microsoft-Visual-Studio). @@ -654,7 +654,7 @@ You can cross compile Exiv2 on Linux for MinGW. We have used the following meth $ sudo dnf install mingw64-gcc-c++ mingw64-filesystem mingw64-expat mingw64-zlib cmake make ``` -#### 2 Install Dependancies +#### 2 Install Dependencies You will need to install x86_64 libraries to support the options you wish to use. By default, you will need libz and expat. Your `dnf` command above has installed them for you. If you wish to use features such as `webready` you should install openssl and libcurl as follows: @@ -807,7 +807,7 @@ Access to the bmff code is guarded in two ways. Firstly, you have to build the EXIV2API bool enableBMFF(bool enable); ``` -The return value from `enableBMFF()` is true if the library has been build with bmff support (cmake option -DEXIV2_ANABLE_BMFF=On). +The return value from `enableBMFF()` is true if the library has been build with bmff support (cmake option -DEXIV2_ENABLE_BMFF=On). Applications may wish to provide a preference setting to enable bmff support and thereby place the responsibility for the use of this code with the user of the application. diff --git a/SECURITY.md b/SECURITY.md index 81c18f620d..944e007fa5 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -38,7 +38,7 @@ Team Exiv2 does not back-port security (or any other fix) to earlier releases of The version numbering scheme is explained below. The design includes provision for a security release. A _**Dot Release**_ is an updated version of the library with security PRs and other changes. A _**Dot Release**_ offers the same API as its parent. A _**Security Release**_ is an existing release PLUS one or more security PRs. Nothing else is changed from it parent. -Users can register on GitHub.com to receive release notices for RC and GM Releases. Additionally, we inform users when we begin a project to create a new release on FaceBook (https://facebook.com/exiv2) and Discuss Pixls (https://discuss.pixls.us). The announcement of a new release project has a preliminay specification and schedule. +Users can register on GitHub.com to receive release notices for RC and GM Releases. Additionally, we inform users when we begin a project to create a new release on FaceBook (https://facebook.com/exiv2) and Discuss Pixls (https://discuss.pixls.us). The announcement of a new release project has a preliminary specification and schedule. ## Version Numbering Scheme diff --git a/cmake/Doxyfile.in b/cmake/Doxyfile.in index 230739fc23..3c90731936 100644 --- a/cmake/Doxyfile.in +++ b/cmake/Doxyfile.in @@ -268,7 +268,7 @@ OPTIMIZE_OUTPUT_VHDL = NO # parses. With this tag you can assign which parser to use for a given # extension. Doxygen has a built-in mapping, but you can override or extend it # using this tag. The format is ext=language, where ext is a file extension, and -# language is one of the parsers supported by doxygen: IDL, Java, Javascript, +# language is one of the parsers supported by doxygen: IDL, Java, JavaScript, # C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran: # FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran: # Fortran. In the later case the parser tries to guess whether the code is fixed @@ -675,7 +675,7 @@ SHOW_NAMESPACES = YES # The FILE_VERSION_FILTER tag can be used to specify a program or script that # doxygen should invoke to get the current version for each file (typically from # the version control system). Doxygen will invoke the program by executing (via -# popen()) the command command input-file, where command is the value of the +# popen()) the command input-file, where command is the value of the # FILE_VERSION_FILTER tag, and input-file is the name of an input file provided # by doxygen. Whatever the program writes to standard output is used as the file # version. For an example see the documentation. @@ -1474,7 +1474,7 @@ EXT_LINKS_IN_WINDOW = NO FORMULA_FONTSIZE = 10 -# Use the FORMULA_TRANPARENT tag to determine whether or not the images +# Use the FORMULA_TRANSPARENT tag to determine whether or not the images # generated for formulas are transparent PNGs. Transparent PNGs are not # supported properly for IE 6.0, but are supported on all modern browsers. # @@ -1486,7 +1486,7 @@ FORMULA_FONTSIZE = 10 FORMULA_TRANSPARENT = YES # Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see -# http://www.mathjax.org) which uses client side Javascript for the rendering +# http://www.mathjax.org) which uses client side JavaScript for the rendering # instead of using pre-rendered bitmaps. Use this if you do not have LaTeX # installed or if you want to formulas look prettier in the HTML output. When # enabled you may also need to install MathJax separately and configure the path @@ -1556,7 +1556,7 @@ MATHJAX_CODEFILE = SEARCHENGINE = YES # When the SERVER_BASED_SEARCH tag is enabled the search engine will be -# implemented using a web server instead of a web client using Javascript. There +# implemented using a web server instead of a web client using JavaScript. There # are two flavors of web server based searching depending on the EXTERNAL_SEARCH # setting. When disabled, doxygen will generate a PHP script for searching and # an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing diff --git a/cmake/JoinPaths.cmake b/cmake/JoinPaths.cmake index cfd54c9c98..36bcb13ede 100644 --- a/cmake/JoinPaths.cmake +++ b/cmake/JoinPaths.cmake @@ -1,5 +1,5 @@ # This module provides function for joining paths -# known from from most languages +# known from most languages # # Original license: # SPDX-License-Identifier: (MIT OR CC0-1.0) diff --git a/cmake/packaging.cmake b/cmake/packaging.cmake index 423d9a4a5c..db50f739a0 100644 --- a/cmake/packaging.cmake +++ b/cmake/packaging.cmake @@ -131,7 +131,7 @@ foreach(doc ${DOCS}) install(FILES ${CMAKE_CURRENT_SOURCE_DIR}/${doc} DESTINATION .) endforeach() -# copy build/log which which is present if built by build.sh +# copy build/log which is present if built by build.sh if(EXISTS ${PROJECT_SOURCE_DIR}/build/logs/build.txt) install(FILES ${PROJECT_SOURCE_DIR}/build/logs/build.txt DESTINATION "logs") endif() diff --git a/contrib/coverity.sh b/contrib/coverity.sh index 9ceb4da3ad..29b35dfadd 100755 --- a/contrib/coverity.sh +++ b/contrib/coverity.sh @@ -7,7 +7,7 @@ # # Before to run this script you must set these shell variable : # $EXIVCoverityToken with token of Exiv2 project given by Coverity SCAN -# $EXIVCoverityEmail with email adress to send SCAN result. +# $EXIVCoverityEmail with email address to send SCAN result. # # Coverity Scan bin dir must be appended to PATH variable. # diff --git a/contrib/vs2019/README.md b/contrib/vs2019/README.md index 0d4827742b..be9e7adae9 100644 --- a/contrib/vs2019/README.md +++ b/contrib/vs2019/README.md @@ -61,7 +61,7 @@ E:\Projects\libexpat. The exiv2 solution will have the exiv2 project exposition) and the expat-static project (from libexpat). The expat-static project is added as a reference to the exiv2 project. This make Visual Studio generate the correct dependency -heirarchy and compile correctly. +hierarchy and compile correctly. # Folder Structure # diff --git a/doc/ChangeLog b/doc/ChangeLog index 32817b4b0f..d7881d5fda 100644 --- a/doc/ChangeLog +++ b/doc/ChangeLog @@ -323,7 +323,7 @@ Build: (11) 0001329 Error during cmake with gcc version parsing 0001310 Provide support for msys/2.0 0001299 exiv2-0.26-trunk.tar.gz changed on download server - 0001270 Using libexiv2.a/.lib in multhreaded app segfaults. + 0001270 Using libexiv2.a/.lib in multithreaded app segfaults. 0001237 Report CMake/MinGW issues to Kitware 0001188 Provide build support for C++11 0001174 Visual Studio Support Enhancements @@ -643,9 +643,9 @@ Changes from version 0.25 to 0.26 - 0001145: Respect Sony/Minolta lenses with shared LensID such as Tamron SP AF 17-50mm F2.8 XR Di II LD - 0001144: Sigma 10-20mm f/4-5.6 EX DC is detected as Tamaron (Simon Harhues) - - 0001142: Manual lens does not get recogniced: Beroflex zoom 500mm + - 0001142: Manual lens does not get recognized: Beroflex zoom 500mm (Simon Harhues / Niels Kristian Bech Jensen) - - 0001141: Manual lens does not get recogniced: Pentax macro 100mm + - 0001141: Manual lens does not get recognized: Pentax macro 100mm (Simon Harhues / Niels Kristian Bech Jensen) - 0001118: Add support for ZEISS Loxia 2/50 lens (Eugen Neu) @@ -689,7 +689,7 @@ Changes from version 0.25 to 0.26 - 0000922: Add options -pS and -dI to application exiv2 - 0000855: Segfault when accessing focalLength with 0.23 (Tobias E.) - - 0000756: Access to ICC Profile (TAG: 0x8773) data in Exif as uninterpretted binary + - 0000756: Access to ICC Profile (TAG: 0x8773) data in Exif as uninterpreted binary (Ray NA) - 0000676: Patch for reading ICC color profiles (Andreas Huggel) @@ -783,7 +783,7 @@ Changes from version 0.25 to 0.26 * Testing: (6) - 0001230: Bug Hunt for v0.26 - - 0001207: digiKam maintenance tool to synchronize files metadata and database crash in Exiv2 (re-entrancy issue ?) + - 0001207: digiKam maintenance tool to synchronize files metadata and database crash in Exiv2 (reentrancy issue ?) (Uwe Haider) - 0001057: Implement target/modifier - (stdin/stdout) for exiv2 options -i (insert) and -e (extract) - 0001045: Add COPYRIGHT file to test/data/ @@ -1192,7 +1192,7 @@ Changes from version 0.23 to 0.24 (Reported by S. Verdoold, patch by Pascal de Bruijn) - 0000861: Sigma 18-250mm not properly recognised on Pentax (Reported by S. Verdoold, patch by Pascal de Bruijn) - - 0000862: Video code is failing the test suite (on all plaforms) + - 0000862: Video code is failing the test suite (on all platforms) (Robin Mills, Abhinav Badola) - 0000865: Patches for locale and boost issue (Patches by Mario anyc) - 0000868: Support for two lens for sony mount @@ -1463,7 +1463,7 @@ Changes from version 0.20 to 0.21 (Patch by Matthias Baas) - Added ExifKey::defaultCount() to access the new count reference information. - - Fixed zlib uncompression of large PNG metadata buffers. + - Fixed zlib decompression of large PNG metadata buffers. - Improved determination of MIME type. - Updated Canon makernote. (Greg Mansfield, Axel Waggershauser) - Updated Olympus makernote. (Greg Mansfield) @@ -1713,7 +1713,7 @@ Changes from version 0.18 to 0.18.1 support for multiple TIFF tree structures. * MSVC related - - 0000621: windows librarys are forcing a link to + - 0000621: windows libraries are forcing a link to ..\..\..\zlib-1.2.3\projects\visual6\blah\blah. (Reported by Peter J. Ersts, fix by Robin Mills) @@ -2051,7 +2051,7 @@ Changes from version 0.12 to 0.13 and insert actions. * Exiv2 library - - 0000503: [metadata] Tiff generated by photoshop crashes exiv2 + - 0000503: [metadata] Tiff generated by Photoshop crashes exiv2 (digikam bug 139658). - 0000502: [iptc] New TIFF parser: Decode IPTC from Exif.Image.IPTCNAA. (Reported by Walter Hangartner) @@ -2124,7 +2124,7 @@ Changes from version 0.11 to 0.12 - [exif] Updated Minolta makernote. (Gilles Caulier, Paul Tribick) * MSVC related - - 0000487: Crash in exiv2.exe (built with VC++ 2005 Express) when examing TIFF + - 0000487: Crash in exiv2.exe (built with VC++ 2005 Express) when examining TIFF images (Reported with patch by Dimitri Schoolwerth) diff --git a/doc/cmdxmp.txt b/doc/cmdxmp.txt index 29d978d1bf..6355ce1edd 100644 --- a/doc/cmdxmp.txt +++ b/doc/cmdxmp.txt @@ -70,7 +70,7 @@ set Xmp.xmpDM.videoFrameSize/stDim:unit inch set Xmp.dc.publisher James Bond set Xmp.dc.publisher[1]/?ns:role secret agent -# Add a qualifer to an array element of Xmp.dc.creator (added above) +# Add a qualifier to an array element of Xmp.dc.creator (added above) set Xmp.dc.creator[2]/?ns:role programmer # Add an array of structures. First set a text property with just the diff --git a/exiv2.md b/exiv2.md index 2900349e87..c3134ad043 100644 --- a/exiv2.md +++ b/exiv2.md @@ -107,7 +107,7 @@ image are determined. - Reading other TIFF-like RAW image formats, which are not listed in the table, may also work. -- Some image formats allow an extra interal type of metadata. Only +- Some image formats allow an extra internal type of metadata. Only partial support exists for the RAF format. - Support for BMFF types such as AVIF, CR3, HEIF and HEIC is a build @@ -1008,8 +1008,8 @@ HH:MM:SScHH:MM ``` where HH:MM:SS refers to local time's hour, minutes and seconds and, HH:MM refers to hours and minutes with c being ahead (+) or behind (-) -Universal Coordinated Time (UCT) as described in ISO 8601 (e.g., -08:45:15+01:00 is 08:45:15, which is +1 hour different from UCT). +Coordinated Universal Time (UTC) as described in ISO 8601 (e.g., +08:45:15+01:00 is 08:45:15, which is +1 hour different from UTC).
@@ -1803,7 +1803,7 @@ tags. See [fixiso](#fi_fixiso).
# 14 RETURN VALUE -`0` if successfull, otherwise a positive integer as error code. +`0` if successful, otherwise a positive integer as error code. [TOC](#TOC) @@ -1815,7 +1815,7 @@ tags. See [fixiso](#fi_fixiso). ### TZ This is the timezone to use when adjusting for daylight savings time (DST) and -affects the changing of the the time and date (e.g., when adjusting or +affects the changing of the time and date (e.g., when adjusting or renaming). See https://en.wikipedia.org/wiki/List_of_tz_database_time_zones for a list of valid values to use. The variable is not set by default for Windows and an attempt is made to obtain the timezone from the OS. If this diff --git a/include/exiv2/basicio.hpp b/include/exiv2/basicio.hpp index 1f6d4f0dc2..6bda664780 100644 --- a/include/exiv2/basicio.hpp +++ b/include/exiv2/basicio.hpp @@ -310,7 +310,7 @@ namespace Exiv2 { /*! @brief Constructor that accepts the file path on which IO will be performed. The constructor does not open the file, and - therefore never failes. + therefore never fails. @param path The full path of a file */ explicit FileIo(const std::string& path); @@ -329,7 +329,7 @@ namespace Exiv2 { //! @name Manipulators //@{ /*! - @brief Open the file using using the specified mode. + @brief Open the file using the specified mode. This method can also be used to "reopen" a file which will flush any unwritten data and reset the IO position to the start. Although @@ -343,7 +343,7 @@ namespace Exiv2 { */ int open(const std::string& mode); /*! - @brief Open the file using using the default access mode of "rb". + @brief Open the file using the default access mode of "rb". This method can also be used to "reopen" a file which will flush any unwritten data and reset the IO position to the start. @return 0 if successful;
@@ -884,7 +884,7 @@ namespace Exiv2 { */ DataBuf read(long rcount) override; /*! - @brief Read data from the the memory blocks. Reading starts at the current + @brief Read data from the memory blocks. Reading starts at the current IO position and the position is advanced by the number of bytes read. If the memory blocks are not populated (!= bMemory), it will connect to server @@ -994,7 +994,7 @@ namespace Exiv2 { /*! @brief Constructor that accepts the http URL on which IO will be performed. The constructor does not open the file, and - therefore never failes. + therefore never fails. @param url The full path of url @param blockSize the size of the memory block. The file content is divided into the memory blocks. These blocks are populated diff --git a/include/exiv2/config.h b/include/exiv2/config.h index 8c35ec2120..84e3f8d05d 100644 --- a/include/exiv2/config.h +++ b/include/exiv2/config.h @@ -36,7 +36,7 @@ typedef int pid_t; #include "exv_conf.h" //////////////////////////////////////// -///// Start of platform marcos ///////// +///// Start of platform macros ///////// #if defined(__MINGW32__) || defined(__MINGW64__) # ifndef __MING__ # define __MING__ 1 @@ -79,9 +79,9 @@ typedef int pid_t; # include # endif #endif -///// End of platform marcos ///////// +///// End of platform macros ///////// -///// Path separator marcos ///// +///// Path separator macros ///// #ifndef EXV_SEPARATOR_STR # if defined(WIN32) && !defined(__CYGWIN__) # define EXV_SEPARATOR_STR "\\" diff --git a/include/exiv2/datasets.hpp b/include/exiv2/datasets.hpp index b45928e8b7..17916d5471 100644 --- a/include/exiv2/datasets.hpp +++ b/include/exiv2/datasets.hpp @@ -187,11 +187,11 @@ namespace Exiv2 { */ static const char* dataSetDesc(uint16_t number, uint16_t recordId); /*! - @brief Return the photohsop name of a given dataset. + @brief Return the Photoshop name of a given dataset. @param number The dataset number @param recordId The IPTC record Id - @return The name used by photoshop for a dataset or an empty - string if photoshop does not use the dataset. + @return The name used by Photoshop for a dataset or an empty + string if Photoshop does not use the dataset. */ static const char* dataSetPsName(uint16_t number, uint16_t recordId); /*! diff --git a/include/exiv2/slice.hpp b/include/exiv2/slice.hpp index 2d25cb926d..6b247ce1f5 100644 --- a/include/exiv2/slice.hpp +++ b/include/exiv2/slice.hpp @@ -156,7 +156,7 @@ namespace Exiv2 typedef typename storage_type::value_type value_type; /*! - * Default contructor, requires begin to be smaller than end, + * Default constructor, requires begin to be smaller than end, * otherwise an exception is thrown. Also forwards all parameters to * the constructor of storage_ */ diff --git a/include/exiv2/tags.hpp b/include/exiv2/tags.hpp index cbc5e47f83..8910839e50 100644 --- a/include/exiv2/tags.hpp +++ b/include/exiv2/tags.hpp @@ -137,7 +137,7 @@ namespace Exiv2 { @param key The key string. @throw Error if the first part of the key is not 'Exif' or - the remainin parts of the key cannot be parsed and + the remaining parts of the key cannot be parsed and converted to a group name and tag name. */ explicit ExifKey(const std::string& key); diff --git a/include/exiv2/types.hpp b/include/exiv2/types.hpp index c6b1afe289..b3f7a4c2f8 100644 --- a/include/exiv2/types.hpp +++ b/include/exiv2/types.hpp @@ -102,12 +102,12 @@ namespace Exiv2 { asciiString = 2, //!< Exif ASCII type, 8-bit byte. unsignedShort = 3, //!< Exif SHORT type, 16-bit (2-byte) unsigned integer. unsignedLong = 4, //!< Exif LONG type, 32-bit (4-byte) unsigned integer. - unsignedRational = 5, //!< Exif RATIONAL type, two LONGs: numerator and denumerator of a fraction. + unsignedRational = 5, //!< Exif RATIONAL type, two LONGs: numerator and denominator of a fraction. signedByte = 6, //!< Exif SBYTE type, an 8-bit signed (twos-complement) integer. undefined = 7, //!< Exif UNDEFINED type, an 8-bit byte that may contain anything. signedShort = 8, //!< Exif SSHORT type, a 16-bit (2-byte) signed (twos-complement) integer. signedLong = 9, //!< Exif SLONG type, a 32-bit (4-byte) signed (twos-complement) integer. - signedRational =10, //!< Exif SRATIONAL type, two SLONGs: numerator and denumerator of a fraction. + signedRational =10, //!< Exif SRATIONAL type, two SLONGs: numerator and denominator of a fraction. tiffFloat =11, //!< TIFF FLOAT type, single precision (4-byte) IEEE format. tiffDouble =12, //!< TIFF DOUBLE type, double precision (8-byte) IEEE format. tiffIfd =13, //!< TIFF IFD type, 32-bit (4-byte) unsigned integer. diff --git a/include/exiv2/value.hpp b/include/exiv2/value.hpp index dc50bfa81c..1709a8b7bf 100644 --- a/include/exiv2/value.hpp +++ b/include/exiv2/value.hpp @@ -406,7 +406,7 @@ namespace Exiv2 { /*! @brief %Value for string type. - This can be a plain Ascii string or a multipe byte encoded string. It is + This can be a plain Ascii string or a multiple byte encoded string. It is left to caller to decode and encode the string to and from readable text if that is required. */ @@ -472,7 +472,7 @@ namespace Exiv2 { //@{ UniquePtr clone() const { return UniquePtr(clone_()); } /*! - @brief Write the ASCII value up to the the first '\\0' character to an + @brief Write the ASCII value up to the first '\\0' character to an output stream. Any further characters are ignored and not written to the output stream. */ @@ -488,7 +488,7 @@ namespace Exiv2 { /*! @brief %Value for an Exif comment. - This can be a plain Ascii string or a multipe byte encoded string. The + This can be a plain Ascii string or a multiple byte encoded string. The comment is expected to be encoded in the character set indicated (default undefined), but this is not checked. It is left to caller to decode and encode the string to and from readable text if that is required. diff --git a/po/exiv2.pot b/po/exiv2.pot index c42477ce2e..109f87fbad 100644 --- a/po/exiv2.pot +++ b/po/exiv2.pot @@ -13401,7 +13401,7 @@ msgstr "" #: src/properties.cpp:277 msgid "" -"References to resources that were incorporated, byinclusion or reference, " +"References to resources that were incorporated, by inclusion or reference, " "into this resource." msgstr "" diff --git a/releasenotes/releasenotes.txt b/releasenotes/releasenotes.txt index c2aa8e476d..565af41e24 100644 --- a/releasenotes/releasenotes.txt +++ b/releasenotes/releasenotes.txt @@ -25,10 +25,10 @@ Thank You to the following who have contributed to this release. 1) Bug and security fixes: - bmff read-only support (.CR3, .HEIC, .HEIF, .AVIF and JXL/bmff). - Security process is defined. https://github.com/Exiv2/exiv2/security/policy - - 3 benign ASAN issues. First CVE in 18 months. Patched in 2hrs, Fixed ixed in 24hrs. + - 3 benign ASAN issues. First CVE in 18 months. Patched in 2hrs, Fixed in 24hrs. - DNG 1.6 and Exif 2.32 support. - More easyaccess APIs and documentation. - - Localation support on Crowdin. + - Localization support on Crowdin. - Updated Catalan localisation. 2) Changes to downloadable build bundles: @@ -248,7 +248,7 @@ Build: (11) 0001329 Error during cmake with gcc version parsing 0001310 Provide support for msys/2.0 0001299 exiv2-0.26-trunk.tar.gz changed on download server - 0001270 Using libexiv2.a/.lib in multhreaded app segfaults. + 0001270 Using libexiv2.a/.lib in multithreaded app segfaults. 0001237 Report CMake/MinGW issues to Kitware 0001188 Provide build support for C++11 0001174 Visual Studio Support Enhancements diff --git a/samples/conntest.cpp b/samples/conntest.cpp index 1622e297f4..3537567d30 100644 --- a/samples/conntest.cpp +++ b/samples/conntest.cpp @@ -50,7 +50,7 @@ void httpcon(const std::string& url, bool useHttp1_0 = false) { void curlcon(const std::string& url, bool useHttp1_0 = false) { CURL* curl = curl_easy_init(); if(!curl) { - throw Exiv2::Error(Exiv2::kerErrorMessage, "Uable to init libcurl."); + throw Exiv2::Error(Exiv2::kerErrorMessage, "Unable to init libcurl."); } // get the timeout value @@ -73,7 +73,7 @@ void curlcon(const std::string& url, bool useHttp1_0 = false) { /* Perform the request, res will get the return code */ CURLcode res = curl_easy_perform(curl); - if(res != CURLE_OK) { // error happends + if(res != CURLE_OK) { // error happened throw Exiv2::Error(Exiv2::kerErrorMessage, curl_easy_strerror(res)); } diff --git a/samples/exiv2json.cpp b/samples/exiv2json.cpp index 35ebff9b2b..795e987102 100644 --- a/samples/exiv2json.cpp +++ b/samples/exiv2json.cpp @@ -164,7 +164,7 @@ bool isArray(std::string& value) template void push(Jzon::Node& node,const std::string& key,T i) { -#define ABORT_IF_I_EMTPY \ +#define ABORT_IF_I_EMPTY \ if (i->value().size() == 0) { \ return; \ } @@ -200,7 +200,7 @@ void push(Jzon::Node& node,const std::string& key,T i) case Exiv2::unsignedRational: case Exiv2::signedRational: { - ABORT_IF_I_EMTPY + ABORT_IF_I_EMPTY Jzon::Array arr; Exiv2::Rational rat = i->value().toRational(); arr.Add(rat.first ); @@ -209,7 +209,7 @@ void push(Jzon::Node& node,const std::string& key,T i) } break; case Exiv2::langAlt: { - ABORT_IF_I_EMTPY + ABORT_IF_I_EMPTY Jzon::Object l ; const auto& langs = dynamic_cast(i->value()); for (auto&& lang : langs.value_) { diff --git a/samples/geotag.cpp b/samples/geotag.cpp index a300ff5952..d873a495ea 100644 --- a/samples/geotag.cpp +++ b/samples/geotag.cpp @@ -310,7 +310,7 @@ struct UserData final std::string exift; time_t time{0}; Options& options_; -// static public data memembers +// static public data members }; // XML Parser Callbacks diff --git a/samples/getopt-test.cpp b/samples/getopt-test.cpp index 83e4f44181..48d5f6bb9f 100644 --- a/samples/getopt-test.cpp +++ b/samples/getopt-test.cpp @@ -60,7 +60,7 @@ class Params : public Util::Getopt { public: /*! - @brief Call Getopt::getopt() with optstring, to inititate command line + @brief Call Getopt::getopt() with optstring, to initiate command line argument parsing, perform consistency checks after all command line arguments are parsed. diff --git a/samples/xmpsample.cpp b/samples/xmpsample.cpp index 5bfbf67d57..7f237bf580 100644 --- a/samples/xmpsample.cpp +++ b/samples/xmpsample.cpp @@ -187,7 +187,7 @@ try { xmpData["Xmp.dc.publisher"] = "James Bond"; // creates an unordered array xmpData["Xmp.dc.publisher[1]/?ns:role"] = "secret agent"; - // Add a qualifer to an array element of Xmp.dc.creator (added above) + // Add a qualifier to an array element of Xmp.dc.creator (added above) tv.read("programmer"); xmpData.add(Exiv2::XmpKey("Xmp.dc.creator[2]/?ns:role"), &tv); diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 567b2f9a38..2216dcf671 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -186,7 +186,7 @@ elseif(EXIV2_ENABLE_EXTERNAL_XMP) target_compile_definitions(exiv2lib PUBLIC EXV_ADOBE_XMPSDK=2016) endif() -# Use include/exiv2 to build libary code +# Use include/exiv2 to build library code target_include_directories(exiv2lib PUBLIC $ $ diff --git a/src/actions.hpp b/src/actions.hpp index 09f4eeaa7b..8bfe064202 100644 --- a/src/actions.hpp +++ b/src/actions.hpp @@ -212,7 +212,7 @@ namespace Action { }; // class Print /*! - @brief %Rename a file to its metadate creation timestamp, + @brief %Rename a file to its metadata creation timestamp, in the specified format. */ class Rename : public Task { diff --git a/src/basicio.cpp b/src/basicio.cpp index 7e32370515..52bc70206c 100644 --- a/src/basicio.cpp +++ b/src/basicio.cpp @@ -2080,7 +2080,7 @@ namespace Exiv2 { throw Error(kerErrorMessage, "Please set the path of the server script to handle http post data to EXIV2_HTTP_POST environmental variable."); } - // standadize the path without "/" at the beginning. + // standardize the path without "/" at the beginning. std::size_t protocolIndex = scriptPath.find("://"); if (protocolIndex == std::string::npos && scriptPath[0] != '/') { scriptPath = "/" + scriptPath; @@ -2192,7 +2192,7 @@ namespace Exiv2 { CurlIo::CurlImpl::CurlImpl(const std::string& url, size_t blockSize) : Impl(url, blockSize), curl_(curl_easy_init()) { if(!curl_) { - throw Error(kerErrorMessage, "Uable to init libcurl."); + throw Error(kerErrorMessage, "Unable to init libcurl."); } // The default block size for FTP is much larger than other protocols @@ -2218,7 +2218,7 @@ namespace Exiv2 { // init curl pointer curl_ = curl_easy_init(); if(!curl_) { - throw Error(kerErrorMessage, "Uable to init libcurl."); + throw Error(kerErrorMessage, "Unable to init libcurl."); } // The default block size for FTP is much larger than other protocols @@ -2245,7 +2245,7 @@ namespace Exiv2 { /* Perform the request, res will get the return code */ CURLcode res = curl_easy_perform(curl_); - if(res != CURLE_OK) { // error happends + if(res != CURLE_OK) { // error happened throw Error(kerErrorMessage, curl_easy_strerror(res)); } // get status diff --git a/src/bmffimage.cpp b/src/bmffimage.cpp index 607ff073c5..b8856e7d40 100644 --- a/src/bmffimage.cpp +++ b/src/bmffimage.cpp @@ -67,7 +67,7 @@ #define TAG_iinf 0x69696e66 /**< "iinf" Item info */ #define TAG_iloc 0x696c6f63 /**< "iloc" Item location */ #define TAG_ispe 0x69737065 /**< "ispe" Image spatial extents */ -#define TAG_infe 0x696e6665 /**< "infe" Item Info Extention */ +#define TAG_infe 0x696e6665 /**< "infe" Item Info Extension */ #define TAG_ipma 0x69706d61 /**< "ipma" Item Property Association */ #define TAG_cmt1 0x434d5431 /**< "CMT1" ifd0Id */ #define TAG_cmt2 0x434D5432 /**< "CMD2" exifID */ @@ -245,7 +245,7 @@ namespace Exiv2 out << std::endl; } // The enforce() above checks that restore + buffer_size won't - // exceed pbox_end, and by implication, won't excced LONG_MAX + // exceed pbox_end, and by implication, won't exceed LONG_MAX return restore + buffer_size; } diff --git a/src/canonmn_int.cpp b/src/canonmn_int.cpp index e0f3b8064c..e046a01015 100644 --- a/src/canonmn_int.cpp +++ b/src/canonmn_int.cpp @@ -740,8 +740,8 @@ namespace Exiv2 { {0x000a, "WB_GRGBLevelsDaylight", N_("WB_G RGB Levels Daylight"), N_("WB_G RGB Levels Daylight"), canonWbId, makerTags, unsignedLong, -1, printValue}, {0x0012, "WB_GRGBLevelsCloudy", N_("WB_G RGB Levels Cloudy"), N_("WB_G RGB Levels Cloudy"), canonWbId, makerTags, unsignedLong, -1, printValue}, {0x001a, "WB_GRGBLevelsTungsten", N_("WB_G RGB Levels Tungsten"), N_("WB_G RGB Levels Tungsten"), canonWbId, makerTags, unsignedLong, -1, printValue}, - {0x0022, "WB_GRGBLevelsFluorescent", N_("WB_G RGB Levels Flourescent"), N_("WB_G RGB Levels Flourescent"), canonWbId, makerTags, unsignedLong, -1, printValue}, - {0x002a, "WB_GRGBLevelsFluorHigh", N_("WB_G RGB Levels Flourecent High"), N_("WB_G RGB Levels Flourecent High"), canonWbId, makerTags, unsignedLong, -1, printValue}, + {0x0022, "WB_GRGBLevelsFluorescent", N_("WB_G RGB Levels Fluorescent"), N_("WB_G RGB Levels Fluorescent"), canonWbId, makerTags, unsignedLong, -1, printValue}, + {0x002a, "WB_GRGBLevelsFluorHigh", N_("WB_G RGB Levels Fluorescent High"), N_("WB_G RGB Levels Fluorescent High"), canonWbId, makerTags, unsignedLong, -1, printValue}, {0x0032, "WB_GRGBLevelsFlash", N_("WB_G RGB Levels Flash"), N_("WB_G RGB Levels Flash"), canonWbId, makerTags, unsignedLong, -1, printValue}, {0x003a, "WB_GRGBLevelsUnderwater", N_("WB_G RGB Levels Underwater"), N_("WB_G RGB Levels Underwater"), canonWbId, makerTags, unsignedLong, -1, printValue}, {0x0042, "WB_GRGBLevelsCustom1", N_("WB_G RGB Levels Custom 1"), N_("WB_G RGB Levels Custom 1"), canonWbId, makerTags, unsignedLong, -1, printValue}, @@ -849,7 +849,7 @@ namespace Exiv2 { {0x000d, "WB_RGGBLevelsShade", N_("WB_RGGB Levels Shade"), N_("WB_RGGB Levels Shade"), canonCbId, makerTags, signedShort, -1, printValue}, {0x001a, "WB_RGGBLevelsCloudy", N_("WB_RGGB Levels Cloudy"), N_("WB_RGGB Levels Cloudy"), canonCbId, makerTags, signedShort, -1, printValue}, {0x0011, "WB_RGGBLevelsTungsten", N_("WB_RGGB Levels Tungsten"), N_("WB_RGGB Levels Tungsten"), canonCbId, makerTags, signedShort, -1, printValue}, - {0x0015, "WB_RGGBLevelsFlourescent", N_("WB_RGGB Levels Flourecent"), N_("WB_RGGB Levels Flourecent"), canonCbId, makerTags, signedShort, -1, printValue}, + {0x0015, "WB_RGGBLevelsFluorescent", N_("WB_RGGB Levels Fluorescent"), N_("WB_RGGB Levels Fluorescent"), canonCbId, makerTags, signedShort, -1, printValue}, {0x0032, "WB_RGGBLevelsFlash", N_("WB_RGGB Levels Flash"), N_("WB_RGGB Levels Flash"), canonCbId, makerTags, signedShort, -1, printValue}, {0x001d, "WB_RGGBLevelsCustomBlackLevels", N_("WB_RGGB Levels Custom Black Levels"), N_("WB_RGGB Levels Custom Black Levels"), canonCbId, makerTags, signedShort, -1, printValue}, {0x0021, "WB_RGGBLevelsKelvin", N_("WB_RGGB Levels Kelvin"), N_("WB_RGGB Levels Kelvin"), canonCbId, makerTags, signedShort, -1, printValue}, @@ -1189,7 +1189,7 @@ namespace Exiv2 { // Canon OneShotAFRelease, tag 0x0001 constexpr TagDetails canonOneShotAFRelease[] = { { 0, N_("Focus Priority") }, - { 1, N_("Release Priortiy") } + { 1, N_("Release Priority") } }; // Canon AutoAFPointSelEOSiTRAF, tag 0x0001 @@ -1230,7 +1230,7 @@ namespace Exiv2 { // Canon ManualAFPointSelPattern, tag 0x0001 constexpr TagDetails canonManualAFPointSelPattern[] = { { 0, N_("Stops at AF Area Edges") }, - { 1, N_("Continous") } + { 1, N_("Continuous") } }; // Canon AFPointDisplayDuringFocus, tag 0x0001 @@ -2914,7 +2914,7 @@ namespace Exiv2 { if ( value.typeId() == unsignedShort && value.count() > 0) { // The offset of '5' seems to be ok for most Canons (see Exiftool) - // It might be explained by the fakt, that most Canons have a longest + // It might be explained by the fact, that most Canons have a longest // exposure of 30s which is 5 EV below 1s // see also printSi0x0017 std::ostringstream oss; diff --git a/src/casiomn_int.cpp b/src/casiomn_int.cpp index 51f9e4464d..84ff45f2f3 100644 --- a/src/casiomn_int.cpp +++ b/src/casiomn_int.cpp @@ -367,11 +367,11 @@ namespace Exiv2 { //! AutoISO, tag 0x3008 constexpr TagDetails casio2AutoISO[] = { - { 1, N_("On") }, - { 2, N_("Off") }, - { 7, N_("On (high sensitiviy)") }, - { 8, N_("On (anti-shake)") }, - { 10, N_("High Speed") } + { 1, N_("On") }, + { 2, N_("Off") }, + { 7, N_("On (high sensitivity)") }, + { 8, N_("On (anti-shake)") }, + { 10, N_("High Speed") } }; //! AFMode, tag 0x3009 @@ -396,7 +396,7 @@ namespace Exiv2 { { 0, N_("Off") }, { 1, N_("Scenery") }, { 3, N_("Green") }, - { 5, N_("Unterwater") }, + { 5, N_("Underwater") }, { 9, N_("Flesh Tones") } }; diff --git a/src/crwimage_int.hpp b/src/crwimage_int.hpp index c3ef56b94d..81e8006811 100644 --- a/src/crwimage_int.hpp +++ b/src/crwimage_int.hpp @@ -226,7 +226,7 @@ namespace Exiv2 { //! Return the tag id of this component uint16_t tagId() const { return tag_ & 0x3fff; } - //! Return the type id of thi component + //! Return the type id of this component TypeId typeId() const { return typeId(tag_); } //! Return the data location for this component diff --git a/src/easyaccess.cpp b/src/easyaccess.cpp index 2b021920d2..caaf84ce70 100644 --- a/src/easyaccess.cpp +++ b/src/easyaccess.cpp @@ -155,7 +155,7 @@ namespace Exiv2 { md_st->write(os, &ed); bool ok = false; const long st_val = parseLong(os.str(), ok); - // SensivityType out of range or cannot be parsed properly + // SensitivityType out of range or cannot be parsed properly if (!ok || st_val < 1 || st_val > 7) break; // pick up list of ISO tags, and check for at least one of diff --git a/src/exiv2app.hpp b/src/exiv2app.hpp index 4168fa4cf9..35b22c1c9f 100644 --- a/src/exiv2app.hpp +++ b/src/exiv2app.hpp @@ -314,7 +314,7 @@ class Params : public Util::Getopt { public: /*! - @brief Call Getopt::getopt() with optstring, to inititate command line + @brief Call Getopt::getopt() with optstring, to initiate command line argument parsing, perform consistency checks after all command line arguments are parsed. diff --git a/src/fff.h b/src/fff.h index ee0652abf9..05ce9a0fd6 100644 --- a/src/fff.h +++ b/src/fff.h @@ -181,7 +181,7 @@ struct IMAGEINFO_T unsigned long trigCount; //!< trig counter short manipulType; //!< defines how to interpret manipFactors short manipFactors[5]; //!< Used average factors - /** Detecor settings - camera type dependent */ + /** Detector settings - camera type dependent */ long detectorPars[20]; //!< Currently used detector parameters like //! used bias, offsets. Usage is camera //! dependent @@ -205,7 +205,7 @@ struct DISTR_DATA_T //! FALSE long curGlobalOffset; float curGlobalGain; //!< globalOffset/Gain to generate LUT from - //! updated continously when live only + //! updated continuously when live only #define regulationOn 1 unsigned short regulMethodMask; //!< Method used for o/g calculation unsigned short visualImage; //!< TRUE (1) for TV (visual) diff --git a/src/http.cpp b/src/http.cpp index d82770f94b..9334b81ff2 100644 --- a/src/http.cpp +++ b/src/http.cpp @@ -366,7 +366,7 @@ int Exiv2::http(Exiv2::Dictionary& request,Exiv2::Dictionary& response,std::stri } } - // if the bufffer's full and we're still searching - give up! + // if the buffer's full and we're still searching - give up! // this handles the possibility that there are no headers if ( bSearching && buff_l-end < 10 ) { bSearching = false ; diff --git a/src/jpgimage.cpp b/src/jpgimage.cpp index d5113cf152..698084866a 100644 --- a/src/jpgimage.cpp +++ b/src/jpgimage.cpp @@ -554,7 +554,7 @@ namespace Exiv2 { std::vector iptcDataSegs; if (bPrint || option == kpsXMP || option == kpsIccProfile || option == kpsIptcErase) { - // nmonic for markers + // mnemonic for markers std::string nm[256]; nm[0xd8] = "SOI"; nm[0xd9] = "EOI"; diff --git a/src/minoltamn_int.cpp b/src/minoltamn_int.cpp index a3077af1a7..d18f7279c0 100644 --- a/src/minoltamn_int.cpp +++ b/src/minoltamn_int.cpp @@ -790,7 +790,7 @@ namespace Exiv2 { {0x0048, "ExposureTime", N_("Exposure Time"), N_("Exposure time"), minoltaCs7DId, makerTags, unsignedShort, 1, printValue}, - // 0x004A is a dupplicate than 0x002D. + // 0x004A is a duplicate than 0x002D. {0x004A, "FreeMemoryCardImages", N_("Free Memory Card Images"), N_("Free memory card images"), minoltaCs7DId, makerTags, unsignedShort, 1, printValue}, @@ -800,7 +800,7 @@ namespace Exiv2 { {0x0060, "NoiseReduction", N_("Noise Reduction"), N_("Noise reduction"), minoltaCs7DId, makerTags, unsignedShort, 1, printMinoltaSonyBoolValue}, - // 0x0062 is a dupplicate than 0x005E. + // 0x0062 is a duplicate than 0x005E. {0x0062, "ImageNumber", N_("Image Number"), N_("Image number"), minoltaCs7DId, makerTags, unsignedShort, 1, printValue}, diff --git a/src/nikonmn_int.cpp b/src/nikonmn_int.cpp index 631b013983..3f3d0644d4 100644 --- a/src/nikonmn_int.cpp +++ b/src/nikonmn_int.cpp @@ -61,7 +61,7 @@ namespace Exiv2 { }; //! Off, Low, Normal, High, multiple tags - constexpr TagDetails nikonActiveDLighning[] = { + constexpr TagDetails nikonActiveDLighting[] = { { 0, N_("Off") }, { 1, N_("Low") }, { 3, N_("Normal") }, @@ -383,7 +383,7 @@ namespace Exiv2 { unsigned long focusPoint = value.toLong(1); switch (focusPoint) { - // Could use array nikonFokuspoints + // Could use array nikonFocuspoints case 0: case 1: case 2: @@ -583,7 +583,7 @@ namespace Exiv2 { {0x001e, "ColorSpace", N_("Color Space"), N_("Color space"), nikon3Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonColorSpace)}, {0x001f, "VRInfo", N_("VR Info"), N_("VR info"), nikon3Id, makerTags, undefined, -1, printValue}, {0x0020, "ImageAuthentication", N_("Image Authentication"), N_("Image authentication"), nikon3Id, makerTags, unsignedByte, -1, EXV_PRINT_TAG(nikonOffOn)}, - {0x0022, "ActiveDLighting", N_("ActiveD-Lighting"), N_("ActiveD-lighting"), nikon3Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonActiveDLighning)}, + {0x0022, "ActiveDLighting", N_("ActiveD-Lighting"), N_("ActiveD-lighting"), nikon3Id, makerTags, unsignedShort, -1, EXV_PRINT_TAG(nikonActiveDLighting)}, {0x0023, "PictureControl", N_("Picture Control"), N_(" Picture control"), nikon3Id, makerTags, undefined, -1, printValue}, {0x0024, "WorldTime", N_("World Time"), N_("World time"), nikon3Id, makerTags, undefined, -1, printValue}, {0x0025, "ISOInfo", N_("ISO Info"), N_("ISO info"), nikon3Id, makerTags, undefined, -1, printValue}, @@ -1710,7 +1710,7 @@ namespace Exiv2 { // What focuspoint did the user select? if (focuspoint < focuspoints) { os << nikonFocuspoints[focuspoint]; - // TODO: os << position[fokuspoint][combination] + // TODO: os << position[focuspoint][combination] } else os << "(" << focuspoint << ")"; @@ -1718,7 +1718,7 @@ namespace Exiv2 { sep = ','; } - // What fokuspoints(!) did the camera use? add if differs + // What focuspoints(!) did the camera use? add if differs if (focusused == 0) os << sep << " " << _("none"); else if (focusused != 1U<(value.toLong(0)); - /* the 'FMntLens' name is added to the annonymous struct for + /* the 'FMntLens' name is added to the anonymous struct for * fmountlens[] * * remember to name the struct when importing/updating the lens info diff --git a/src/olympusmn_int.hpp b/src/olympusmn_int.hpp index 59aa5bff9b..34e9677d8b 100644 --- a/src/olympusmn_int.hpp +++ b/src/olympusmn_int.hpp @@ -78,7 +78,7 @@ namespace Exiv2 { static std::ostream& print0x1015(std::ostream& os, const Value& value, const ExifData*); //! Print Olympus equipment Lens type static std::ostream& print0x0201(std::ostream& os, const Value& value, const ExifData*); - //! Print Olympus CamerID + //! Print Olympus CameraID static std::ostream& print0x0209(std::ostream& os, const Value& value, const ExifData*); //! Print Olympus equipment Extender static std::ostream& printEq0x0301(std::ostream& os, const Value& value, const ExifData*); diff --git a/src/panasonicmn_int.cpp b/src/panasonicmn_int.cpp index a95fa10bd7..52b1baef18 100644 --- a/src/panasonicmn_int.cpp +++ b/src/panasonicmn_int.cpp @@ -467,7 +467,7 @@ namespace Exiv2 { {0x0040, "Saturation", N_("Saturation"), N_("Saturation"), panasonicId, makerTags, unsignedShort, -1, printValue}, {0x0041, "Sharpness", N_("Sharpness"), N_("Sharpness"), panasonicId, makerTags, unsignedShort, -1, printValue}, {0x0042, "FilmMode", N_("Film Mode"), N_("Film mode"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicFilmMode)}, - {0x0044, "ColorTempKelvin", N_("Color Temp Kelvin"), N_("Color Temperatur in Kelvin"), panasonicId, makerTags, unsignedShort, -1, printValue}, + {0x0044, "ColorTempKelvin", N_("Color Temp Kelvin"), N_("Color Temperature in Kelvin"), panasonicId, makerTags, unsignedShort, -1, printValue}, {0x0045, "BracketSettings", N_("Bracket Settings"), N_("Bracket Settings"), panasonicId, makerTags, unsignedShort, -1, EXV_PRINT_TAG(panasonicBracketSettings)}, {0x0046, "WBAdjustAB", N_("WB Adjust AB"), N_("WB adjust AB. Positive is a shift toward blue."), panasonicId, makerTags, unsignedShort, -1, printValue}, {0x0047, "WBAdjustGM", N_("WB Adjust GM"), N_("WBAdjustGM. Positive is a shift toward green."), panasonicId, makerTags, unsignedShort, -1, printValue}, @@ -601,7 +601,7 @@ namespace Exiv2 { } // PanasonicMakerNote::print0x0029 - // bage age + // baby age std::ostream& PanasonicMakerNote::print0x0033(std::ostream& os, const Value& value, const ExifData*) diff --git a/src/panasonicmn_int.hpp b/src/panasonicmn_int.hpp index 2368c2a519..4951a40192 100644 --- a/src/panasonicmn_int.hpp +++ b/src/panasonicmn_int.hpp @@ -63,7 +63,7 @@ namespace Exiv2 { static std::ostream& printPressure(std::ostream& os, const Value& value, const ExifData*); //! Print special text values: title, landmark, county and so on static std::ostream& printPanasonicText(std::ostream& os, const Value& value, const ExifData*); - //! Print accerometer readings + //! Print accelerometer readings static std::ostream& printAccelerometer(std::ostream& os, const Value& value, const ExifData*); //! Print roll angle static std::ostream& printRollAngle(std::ostream& os, const Value& value, const ExifData*); diff --git a/src/pentaxmn_int.cpp b/src/pentaxmn_int.cpp index a088ff4e13..5db1be8a5c 100644 --- a/src/pentaxmn_int.cpp +++ b/src/pentaxmn_int.cpp @@ -249,7 +249,7 @@ namespace Exiv2 { { 0x109, N_("On, Slow-sync") }, { 0x10a, N_("On, Slow-sync, Red-eye reduction") }, { 0x10b, N_("On, Trailing-curtain Sync") }, -// exiftool recognises 2 values, the values here correpond with Value 0 +// exiftool recognises 2 values, the values here correspond with Value 0 }; //! Focus, tag 0x000d diff --git a/src/pgfimage.cpp b/src/pgfimage.cpp index 94679a9d4e..cb4c349545 100644 --- a/src/pgfimage.cpp +++ b/src/pgfimage.cpp @@ -121,7 +121,7 @@ namespace Exiv2 { uint32_t headerSize = readPgfHeaderSize(*io_); readPgfHeaderStructure(*io_, pixelWidth_, pixelHeight_); - // And now, the most interresting, the user data byte array where metadata are stored as small image. + // And now, the most interesting, the user data byte array where metadata are stored as small image. enforce(headerSize <= std::numeric_limits::max() - 8, kerCorruptedMetadata); #if LONG_MAX < UINT_MAX diff --git a/src/pngchunk_int.cpp b/src/pngchunk_int.cpp index b1db499903..3f498f64f2 100644 --- a/src/pngchunk_int.cpp +++ b/src/pngchunk_int.cpp @@ -354,7 +354,7 @@ namespace Exiv2 } // We look if a comments string exist. Note than we use only 'Description' keyword which - // is dedicaced to store long comments. 'Comment' keyword is ignored. + // is dedicated to store long comments. 'Comment' keyword is ignored. if (keySize >= 11 && memcmp("Description", key, 11) == 0 && pImage->comment().empty()) { pImage->setComment(std::string(arr.c_str(), arr.size())); diff --git a/src/pngimage.cpp b/src/pngimage.cpp index befaa3b6af..ca3926dbae 100644 --- a/src/pngimage.cpp +++ b/src/pngimage.cpp @@ -594,7 +594,7 @@ namespace Exiv2 { return; } if (!strcmp(szChunk, "eXIf")) { - ; // do nothing Exif metdata is written following IHDR + ; // do nothing Exif metadata is written following IHDR ; // as zTXt chunk with signature Raw profile type exif__ } else if (!strcmp(szChunk, "IHDR")) { #ifdef EXIV2_DEBUG_MESSAGES diff --git a/src/preview.cpp b/src/preview.cpp index 19c09d63a5..23d0fc0738 100644 --- a/src/preview.cpp +++ b/src/preview.cpp @@ -110,7 +110,7 @@ namespace { static PreviewId getNumLoaders(); protected: - //! Constructor. Sets all image properies to unknown. + //! Constructor. Sets all image properties to unknown. Loader(PreviewId id, const Image &image); //! Functions that creates a loader from given parameters @@ -810,7 +810,7 @@ namespace { // the size_ parameter is originally computed by summing all values inside sizes // see the constructor of LoaderTiff - // But e.g in malicious files some of thes values could be negative + // But e.g in malicious files some of these values could be negative // That's why we check again for each step here to really make sure we don't overstep enforce(Safe::add(idxBuf, size) <= size_, kerCorruptedMetadata); if (size!=0 && Safe::add(offset, size) <= static_cast(io.size())){ diff --git a/src/properties.cpp b/src/properties.cpp index 7361b2d541..bf2657af1d 100644 --- a/src/properties.cpp +++ b/src/properties.cpp @@ -262,7 +262,7 @@ namespace Exiv2 { "intended to give human readers a general indication of the steps taken to make the " "changes from the previous version to this one. The list should be at an abstract " "level; it is not intended to be an exhaustive keystroke or other detailed history.") }, - { "Ingredients", N_("Ingredients"), "bag ResourceRef", xmpBag, xmpInternal, N_("References to resources that were incorporated, byinclusion or reference, into this resource.") }, + { "Ingredients", N_("Ingredients"), "bag ResourceRef", xmpBag, xmpInternal, N_("References to resources that were incorporated, by inclusion or reference, into this resource.") }, { "InstanceID", N_("Instance ID"), "URI", xmpText, xmpInternal, N_("An identifier for a specific incarnation of a document, updated each time a file " "is saved. It should be based on a UUID; see Document and Instance IDs below.") }, { "ManagedFrom", N_("Managed From"), "ResourceRef", xmpText, xmpInternal, N_("A reference to the document as it was prior to becoming managed. It is set when a " @@ -4161,7 +4161,7 @@ namespace Exiv2 { @throw Error if the key cannot be decomposed. */ - void decomposeKey(const std::string& key); //!< Misterious magic + void decomposeKey(const std::string& key); //!< Mysterious magic // DATA static constexpr auto familyName_ = "Xmp"; //!< "Xmp" diff --git a/src/psdimage.cpp b/src/psdimage.cpp index d442bbb50d..5ddfcb108a 100644 --- a/src/psdimage.cpp +++ b/src/psdimage.cpp @@ -303,7 +303,7 @@ namespace Exiv2 { 8 4 bytes height Height of thumbnail in pixels. 12 4 bytes widthbytes Padded row bytes as (width * bitspixel + 31) / 32 * 4. 16 4 bytes size Total size as widthbytes * height * planes - 20 4 bytes compressedsize Size after compression. Used for consistentcy check. + 20 4 bytes compressedsize Size after compression. Used for consistency check. 24 2 bytes bitspixel = 24. Bits per pixel. 26 2 bytes planes = 1. Number of planes. 28 variable data JFIF data in RGB format. diff --git a/src/tags_int.cpp b/src/tags_int.cpp index 63498dc422..62537bae72 100644 --- a/src/tags_int.cpp +++ b/src/tags_int.cpp @@ -1657,7 +1657,7 @@ namespace Exiv2 { N_("A string that identifies a specific instance in a semantic mask."), ifd0Id, dngTags, asciiString, 0, printValue}, // DNG 1.6 tag {0xcd31, "CalibrationIlluminant3", N_("Calibration Illuminant 3"), - N_("The illuminant used for an optional thrid set of color calibration " + N_("The illuminant used for an optional third set of color calibration " "tags (ColorMatrix3, CameraCalibration3, ReductionMatrix3). The legal " "values for this tag are the same as the legal values for the " "LightSource EXIF tag; CalibrationIlluminant1 and CalibrationIlluminant2 " diff --git a/src/tiffvisitor_int.cpp b/src/tiffvisitor_int.cpp index 3de05e9138..cea9eb3923 100644 --- a/src/tiffvisitor_int.cpp +++ b/src/tiffvisitor_int.cpp @@ -844,7 +844,7 @@ namespace Exiv2 { void TiffEncoder::visitBinaryElement(TiffBinaryElement* object) { - // Temporarily overwrite byteorder according to that of the binary element + // Temporarily overwrite byte order according to that of the binary element ByteOrder boOrig = byteOrder_; if (object->elByteOrder() != invalidByteOrder) byteOrder_ = object->elByteOrder(); encodeTiffComponent(object); diff --git a/src/tiffvisitor_int.hpp b/src/tiffvisitor_int.hpp index ead1409c84..872a91e032 100644 --- a/src/tiffvisitor_int.hpp +++ b/src/tiffvisitor_int.hpp @@ -533,7 +533,7 @@ namespace Exiv2 { static uint32_t updateDirEntry(byte* buf, ByteOrder byteOrder, TiffComponent* pTiffComponent); /*! @brief Check if the tag is an image tag of an existing image. Such - tags are copied from the original image and can't be modifed. + tags are copied from the original image and can't be modified. The condition is true if there is an existing image (as opposed to a newly created TIFF image) and \em tag, \em group diff --git a/src/webpimage.cpp b/src/webpimage.cpp index e99b21ce6c..009253caee 100644 --- a/src/webpimage.cpp +++ b/src/webpimage.cpp @@ -208,14 +208,14 @@ namespace Exiv2 { height = Exiv2::getULong(size_buf, littleEndian) + 1; } - /* Chunk with with animation control data. */ + /* Chunk with animation control data. */ #ifdef __CHECK_FOR_ALPHA__ // Maybe in the future if (equalsWebPTag(chunkId, WEBP_CHUNK_HEADER_ANIM) && !has_alpha) { has_alpha = true; } #endif - /* Chunk with with lossy image data. */ + /* Chunk with lossy image data. */ #ifdef __CHECK_FOR_ALPHA__ // Maybe in the future if (equalsWebPTag(chunkId, WEBP_CHUNK_HEADER_VP8) && !has_alpha) { has_alpha = true; @@ -238,7 +238,7 @@ namespace Exiv2 { height = Exiv2::getUShort(size_buf, littleEndian) & 0x3fff; } - /* Chunk with with lossless image data. */ + /* Chunk with lossless image data. */ if (equalsWebPTag(chunkId, WEBP_CHUNK_HEADER_VP8L) && !has_alpha) { enforce(size >= 5, Exiv2::kerCorruptedMetadata); if ((payload.read_uint8(4) & WEBP_VP8X_ALPHA_BIT) == WEBP_VP8X_ALPHA_BIT) { diff --git a/test/Makefile b/test/Makefile index 88a3bf18a6..c0c61f2344 100644 --- a/test/Makefile +++ b/test/Makefile @@ -53,7 +53,7 @@ SHELL = /bin/bash # ****************************************************************************** # Targets -.PHONY: all test testv teste mostlyclean clean distclean maintainer-clean +.PHONY: all test mostlyclean clean distclean maintainer-clean ## # to save download time for simple build/test, we download video and eps data on demand diff --git a/test/data/cmdxmp.txt b/test/data/cmdxmp.txt index 29d978d1bf..6355ce1edd 100644 --- a/test/data/cmdxmp.txt +++ b/test/data/cmdxmp.txt @@ -70,7 +70,7 @@ set Xmp.xmpDM.videoFrameSize/stDim:unit inch set Xmp.dc.publisher James Bond set Xmp.dc.publisher[1]/?ns:role secret agent -# Add a qualifer to an array element of Xmp.dc.creator (added above) +# Add a qualifier to an array element of Xmp.dc.creator (added above) set Xmp.dc.creator[2]/?ns:role programmer # Add an array of structures. First set a text property with just the diff --git a/test/functions.source b/test/functions.source index 7aef1e9c61..542e745bda 100644 --- a/test/functions.source +++ b/test/functions.source @@ -440,7 +440,7 @@ prepareTest() bin="$EXIV2_BINDIR/" fi - # update PATHs to ensure we load the the correct dynamlic library + # update PATHs to ensure we load the correct dynamic library if [ $PLATFORM == 'mingw' -a $PLATFORM == 'cygwin' ]; then export PATH="$bin:$PATH" elif [ 'PLATFORM' == 'Darwin' ]; then diff --git a/test/nls-test.sh b/test/nls-test.sh index f434303b4b..a4f73d60a6 100755 --- a/test/nls-test.sh +++ b/test/nls-test.sh @@ -8,7 +8,7 @@ source ./functions.source nls=$(runTest exiv2 -vVg nls|tail -1) platform=$(${bin}exiv2${exe} -vVg platform|tail -1) if [ "$nls" != "enable_nls=1" ]; then - echo "exiv2 not bulid with nls" + echo "exiv2 not build with nls" exit 0 fi if [ "$platform" == "platform=windows" ]; then diff --git a/tests/bugfixes/github/test_issue_45.py b/tests/bugfixes/github/test_issue_45.py index 0c066ea743..b8d033acf1 100644 --- a/tests/bugfixes/github/test_issue_45.py +++ b/tests/bugfixes/github/test_issue_45.py @@ -3,7 +3,7 @@ import system_tests -class Sigma24_105mmRecognization(metaclass=system_tests.CaseMeta): +class Sigma24_105mmRecognition(metaclass=system_tests.CaseMeta): url = "https://github.com/Exiv2/exiv2/issues/45" diff --git a/tests/system_tests.py b/tests/system_tests.py index 8d37bd5670..d3b00f7913 100644 --- a/tests/system_tests.py +++ b/tests/system_tests.py @@ -622,7 +622,7 @@ def get_encode_err(): t.cancel() def get_decode_error(): - """ Return an error indicating the the decoding of stdout/stderr + """ Return an error indicating the decoding of stdout/stderr failed. """ return "Could not decode the output of the command '{!s}' with "\ diff --git a/unitTests/test_LangAltValueRead.cpp b/unitTests/test_LangAltValueRead.cpp index 0faa11eb7f..7f0dd663b3 100644 --- a/unitTests/test_LangAltValueRead.cpp +++ b/unitTests/test_LangAltValueRead.cpp @@ -24,11 +24,11 @@ using namespace Exiv2; -// The tests corrispond to those in issue https://github.com/Exiv2/exiv2/issues/1481 +// The tests correspond to those in issue https://github.com/Exiv2/exiv2/issues/1481 // 1. No language value -TEST(LangAltValueReadTest, noLangugeValBeforeSpace) +TEST(LangAltValueReadTest, noLanguageValBeforeSpace) { XmpParser::initialize(); ::atexit(XmpParser::terminate); @@ -45,7 +45,7 @@ TEST(LangAltValueReadTest, noLangugeValBeforeSpace) } } -TEST(LangAltValueReadTest, quoteThenNoLangugeValBeforeSpace) +TEST(LangAltValueReadTest, quoteThenNoLanguageValBeforeSpace) { XmpParser::initialize(); ::atexit(XmpParser::terminate); diff --git a/unitTests/test_basicio.cpp b/unitTests/test_basicio.cpp index d7b32185a2..ad39d92232 100644 --- a/unitTests/test_basicio.cpp +++ b/unitTests/test_basicio.cpp @@ -147,7 +147,7 @@ TEST(MemIo, readLessBytesThanAvailableReturnsRequestedBytes) ASSERT_EQ(5, io.read(buf2.data(), 5)); } -TEST(MemIo, readSameBytesThanAvailableReturnsRequetedBytes) +TEST(MemIo, readSameBytesThanAvailableReturnsRequestedBytes) { std::array buf1, buf2; buf1.fill(1); diff --git a/unitTests/test_slice.cpp b/unitTests/test_slice.cpp index 59171cfcfd..f4f333dee5 100644 --- a/unitTests/test_slice.cpp +++ b/unitTests/test_slice.cpp @@ -33,7 +33,7 @@ class slice; * This namespace contains the helper-function get_test_data. It is intented * to be used for test with the slice fixture: it returns the appropriate * data to the constructor of slice. For (const) T==std::vector it returns the - * fixtures meber vec_, for (const) T==int* it returns vec_.data() + * fixtures member vec_, for (const) T==int* it returns vec_.data() * * Due to C++98's limitations, this requires a separate traits class, that * specifies the return type *and* a specialization of get_test_data for each