Skip to content

Commit

Permalink
fix_enableBMFF_v1
Browse files Browse the repository at this point in the history
  • Loading branch information
clanmills committed Apr 14, 2021
1 parent 6cb3402 commit b09019c
Show file tree
Hide file tree
Showing 5 changed files with 20 additions and 17 deletions.
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ option( EXIV2_ENABLE_WIN_UNICODE "Use Unicode paths (wstring) on Windows"
option( EXIV2_ENABLE_WEBREADY "Build webready support into library" OFF )
option( EXIV2_ENABLE_CURL "USE Libcurl for HttpIo (WEBREADY)" OFF )
option( EXIV2_ENABLE_SSH "USE Libssh for SshIo (WEBREADY)" OFF )
option( EXIV2_ENABLE_BMFF "Build with BMFF support" OFF )
option( EXIV2_ENABLE_BMFF "Build with BMFF support" ON )

option( EXIV2_BUILD_SAMPLES "Build sample applications" ON )
option( EXIV2_BUILD_EXIV2_COMMAND "Build exiv2 command-line executable" ON )
Expand Down
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,7 @@ option( EXIV2_ENABLE_XMP "Build with XMP metadata support" ON
option( EXIV2_ENABLE_EXTERNAL_XMP "Use external version of XMP" OFF )
option( EXIV2_ENABLE_PNG "Build with png support (requires libz)" ON )
...
option( EXIV2_ENABLE_BMFF "Build with BMFF support" OFF )
option( EXIV2_ENABLE_BMFF "Build with BMFF support" ON )
577 rmills@rmillsmm:~/gnu/github/exiv2/exiv2 $
```

Expand Down Expand Up @@ -786,7 +786,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()` reports the current status of bmff support before calling this function.
The return value from `enableBMFF()` is true if the library has been build with bmff support (cmake option -DEXIV2_ANABLE_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.
Expand Down
2 changes: 0 additions & 2 deletions include/exiv2/exiv2.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -45,9 +45,7 @@
#include "exiv2/mrwimage.hpp"
#include "exiv2/orfimage.hpp"
#include "exiv2/pgfimage.hpp"
#ifdef EXV_ENABLE_BMFF
#include "bmffimage.hpp"
#endif

#ifdef EXV_HAVE_LIBZ
#include "exiv2/pngimage.hpp"
Expand Down
8 changes: 3 additions & 5 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -118,11 +118,9 @@ if( EXIV2_ENABLE_VIDEO )
)
endif()

if( EXIV2_ENABLE_BMFF )
target_sources(exiv2lib PRIVATE
bmffimage.cpp ../include/exiv2/bmffimage.hpp
)
endif()
target_sources(exiv2lib PRIVATE
bmffimage.cpp ../include/exiv2/bmffimage.hpp
)

# Other library target properties
# ---------------------------------------------------------
Expand Down
21 changes: 14 additions & 7 deletions src/bmffimage.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -84,18 +84,15 @@ struct BmffBoxHeader

// *****************************************************************************
// class member definitions
#ifdef EXV_ENABLE_BMFF
namespace Exiv2
{
static bool enabled = false;

#ifdef EXV_ENABLE_BMFF
static bool enabled = false;
EXIV2API bool enableBMFF(bool enable)
{
bool result = enabled;
enabled = enable ;
return result ;
enabled = enable ;
return true ;
}
#endif // EXV_ENABLE_BMFF

std::string Iloc::toString() const
{
Expand Down Expand Up @@ -629,3 +626,13 @@ namespace Exiv2
return matched;
}
} // namespace Exiv2
#else // ifdef EXV_ENABLE_BMFF
namespace Exiv2
{
EXIV2API bool enableBMFF(bool)
{
return false ;
}
}
#endif

0 comments on commit b09019c

Please sign in to comment.