commit: 5b0d1e373dcd8c4f79735d033d205a6f36698c59 Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Tue Feb 4 15:46:17 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Tue Feb 4 15:46:17 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5b0d1e37
media-libs/id3lib: fix C23 issues as best we can The situation here is complicated. With C23, 'bool' is exposed properly out of the box (as the same type as '_Bool'). But this is problematic when it comes to C++ where 'bool' was always '_Bool' (or near-enough guaranteed), and where we have existing C applications that we don't want to break ABI for. For C++, id3tag was always using native C++ 'bool', so we don't want to change that now when looking at C23 compat. This means the ABI issues between C and C++ remain: typedef bool my_bool. For C, continue using the old 'int bool' that the project did before C23. This doesn't solve the pre-existing C/C++ ABI issue here where C++ always had "good _Bool-as-bool", unfortunately: typedef int my_bool. Really, we need people to port to taglib ASAP. Bug: https://bugs.gentoo.org/893644 Bug: https://bugs.gentoo.org/949086 Signed-off-by: Sam James <sam <AT> gentoo.org> media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch | 2202 +------------------- 1 file changed, 51 insertions(+), 2151 deletions(-) diff --git a/media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch b/media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch index 402c78be1884..17f59eab4da1 100644 --- a/media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch +++ b/media-libs/id3lib/files/id3lib-3.8.3-fix-c23.patch @@ -1,50 +1,59 @@ -diff '--color=auto' -uNr a/include/id3/field.h b/include/id3/field.h ---- a/include/id3/field.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3/field.h 2025-01-30 14:01:53.586000891 -0000 -@@ -74,17 +74,17 @@ - - // miscelaneous functions - virtual ID3_Field& operator=( const ID3_Field & ) = 0; -- virtual bool InScope(ID3_V2Spec spec) const = 0; -+ virtual my_bool InScope(ID3_V2Spec spec) const = 0; - - virtual ID3_FieldID GetID() const = 0; - virtual ID3_FieldType GetType() const = 0; -- virtual bool SetEncoding(ID3_TextEnc enc) = 0; -+ virtual my_bool SetEncoding(ID3_TextEnc enc) = 0; - virtual ID3_TextEnc GetEncoding() const = 0; -- virtual bool IsEncodable() const = 0; -+ virtual my_bool IsEncodable() const = 0; - - virtual void Render(ID3_Writer&) const = 0; -- virtual bool Parse(ID3_Reader&) = 0; -- virtual bool HasChanged() const = 0; -+ virtual my_bool Parse(ID3_Reader&) = 0; -+ virtual my_bool HasChanged() const = 0; - - protected: - virtual ~ID3_Field() { }; -diff '--color=auto' -uNr a/include/id3/globals.h b/include/id3/globals.h ---- a/include/id3/globals.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3/globals.h 2025-01-30 14:01:53.586000891 -0000 -@@ -82,13 +82,13 @@ +From a52d71d202f6e45cab766c83c16366ca5561a9f2 Mon Sep 17 00:00:00 2001 +From: Sam James <[email protected]> +Date: Tue, 4 Feb 2025 15:43:28 +0000 +Subject: [PATCH] Fix C23 compatibility as best as we can + +The situation here is complicated. With C23, 'bool' is exposed properly +out of the box (as the same type as '_Bool'). But this is problematic +when it comes to C++ where 'bool' was always '_Bool' (or near-enough +guaranteed), and where we have existing C applications that we don't +want to break ABI for. + +For C++, id3tag was always using native C++ 'bool', so we don't want to change +that now when looking at C23 compat. This means the ABI issues between +C and C++ remain: typedef bool my_bool. + +For C, continue using the old 'int bool' that the project did before +C23. This doesn't solve the pre-existing C/C++ ABI issue here where +C++ always had "good _Bool-as-bool", unfortunately: typedef int my_bool. + +Bug: https://bugs.gentoo.org/949086 +Signed-off-by: Sam James <[email protected]> +--- + include/id3/globals.h | 25 ++++++++++++++++--------- + 1 file changed, 16 insertions(+), 9 deletions(-) + +diff --git a/include/id3/globals.h b/include/id3/globals.h +index 5d8fa20..69c02b4 100644 +--- a/include/id3/globals.h ++++ b/include/id3/globals.h +@@ -82,12 +82,19 @@ #define ID3_C_VAR extern -#ifndef __cplusplus -+// #ifndef __cplusplus. Use my_bool everywhere - +- -typedef int bool; +-# define false (0) +-# define true (!false) +- ++#if __cplusplus ++/* id3tag was always using native C++ 'bool', so we don't want to change ++ that now when looking at C23 compat. This means the ABI issues between ++ C and C++ remain. */ ++#include <stdbool.h> ++typedef bool my_bool; ++#else ++/* For C, continue using the old 'int bool' that the project did before ++ C23. This doesn't solve the pre-existing C/C++ ABI issue here where ++ C++ always had "good _Bool-as-bool", unfortunately. */ +typedef int my_bool; - # define false (0) - # define true (!false) - --#endif /* __cplusplus */ -+//#endif /* __cplusplus */ ++#define false (0) ++#define true (!false) + #endif /* __cplusplus */ ID3_C_VAR const char * const ID3LIB_NAME; - ID3_C_VAR const char * const ID3LIB_RELEASE; -@@ -532,9 +532,9 @@ +@@ -532,9 +539,9 @@ ID3_STRUCT(Mp3_Headerinfo) uint32 framesize; uint32 frames; // nr of frames uint32 time; // nr of seconds in song @@ -57,2115 +66,6 @@ diff '--color=auto' -uNr a/include/id3/globals.h b/include/id3/globals.h }; #define ID3_NR_OF_V1_GENRES 148 -diff '--color=auto' -uNr a/include/id3/id3lib_bitset b/include/id3/id3lib_bitset ---- a/include/id3/id3lib_bitset 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3/id3lib_bitset 2025-01-30 14:01:53.586000891 -0000 -@@ -52,14 +52,14 @@ - #endif - - // structure to aid in counting bits --template<bool __dummy> -+template<my_bool __dummy> - struct _Bit_count { - static unsigned char _S_bit_count[256]; - }; - - // Mapping from 8 bit unsigned integers to the index of the first one - // bit: --template<bool __dummy> -+template<my_bool __dummy> - struct _First_one { - static unsigned char _S_first_one[256]; - }; -@@ -135,7 +135,7 @@ - } - } - -- bool _M_is_equal(const _Base_bitset<_Nw,_WordT>& __x) const { -+ my_bool _M_is_equal(const _Base_bitset<_Nw,_WordT>& __x) const { - for (size_t __i = 0; __i < _Nw; ++__i) { - if (_M_w[__i] != __x._M_w[__i]) - return false; -@@ -143,7 +143,7 @@ - return true; - } - -- bool _M_is_any() const { -+ my_bool _M_is_any() const { - for ( size_t __i = 0; __i < __BITSET_WORDS(_Nw,_WordT); __i++ ) { - if ( _M_w[__i] != static_cast<_WordT>(0) ) - return true; -@@ -390,10 +390,10 @@ - void _M_do_set() { _M_w = ~static_cast<_WordT>(0); } - void _M_do_reset() { _M_w = 0; } - -- bool _M_is_equal(const _Base_bitset<1,_WordT>& __x) const { -+ my_bool _M_is_equal(const _Base_bitset<1,_WordT>& __x) const { - return _M_w == __x._M_w; - } -- bool _M_is_any() const { -+ my_bool _M_is_any() const { - return _M_w != 0; - } - -@@ -589,7 +589,7 @@ - ~reference() {} - - // for b[i] = __x; -- reference& operator=(bool __x) { -+ reference& operator=(my_bool __x) { - if ( __x ) - *_M_wp |= _S_maskbit(_M_bpos); - else -@@ -609,10 +609,10 @@ - } - - // flips the bit -- bool operator~() const { return (*(_M_wp) & _S_maskbit(_M_bpos)) == 0; } -+ my_bool operator~() const { return (*(_M_wp) & _S_maskbit(_M_bpos)) == 0; } - - // for __x = b[i]; -- operator bool() const { return (*(_M_wp) & _S_maskbit(_M_bpos)) != 0; } -+ operator my_bool() const { return (*(_M_wp) & _S_maskbit(_M_bpos)) != 0; } - - // for b[i].flip(); - reference& flip() { -@@ -694,7 +694,7 @@ - return *this; - } - -- bool _Unchecked_test(size_t __pos) const { -+ my_bool _Unchecked_test(size_t __pos) const { - return (_M_getword(__pos) & _S_maskbit(__pos)) != static_cast<_WordT>(0); - } - -@@ -752,7 +752,7 @@ - // element access: - //for b[i]; - reference operator[](size_t __pos) { return reference(*this,__pos); } -- bool operator[](size_t __pos) const { return _Unchecked_test(__pos); } -+ my_bool operator[](size_t __pos) const { return _Unchecked_test(__pos); } - - unsigned long to_ulong() const { return _M_do_to_ulong(); } - -@@ -779,22 +779,22 @@ - - size_t size() const { return _Nb; } - -- bool operator==(const bitset<_Nb,_WordT>& __rhs) const { -+ my_bool operator==(const bitset<_Nb,_WordT>& __rhs) const { - return _M_is_equal(__rhs); - } -- bool operator!=(const bitset<_Nb,_WordT>& __rhs) const { -+ my_bool operator!=(const bitset<_Nb,_WordT>& __rhs) const { - return !_M_is_equal(__rhs); - } - -- bool test(size_t __pos) const { -+ my_bool test(size_t __pos) const { - if (__pos > _Nb) - __STL_THROW(out_of_range("bitset")); - - return _Unchecked_test(__pos); - } - -- bool any() const { return _M_is_any(); } -- bool none() const { return !_M_is_any(); } -+ my_bool any() const { return _M_is_any(); } -+ my_bool none() const { return !_M_is_any(); } - - bitset<_Nb,_WordT> operator<<(size_t __pos) const - { return bitset<_Nb,_WordT>(*this) <<= __pos; } -@@ -936,7 +936,7 @@ - // ------------------------------------------------------------ - // Lookup tables for find and count operations. - --template<bool __dummy> -+template<my_bool __dummy> - unsigned char _Bit_count<__dummy>::_S_bit_count[] = { - 0, /* 0 */ 1, /* 1 */ 1, /* 2 */ 2, /* 3 */ 1, /* 4 */ - 2, /* 5 */ 2, /* 6 */ 3, /* 7 */ 1, /* 8 */ 2, /* 9 */ -@@ -992,7 +992,7 @@ - 8 /* 255 */ - }; // end _Bit_count - --template<bool __dummy> -+template<my_bool __dummy> - unsigned char _First_one<__dummy>::_S_first_one[] = { - 0, /* 0 */ 0, /* 1 */ 1, /* 2 */ 0, /* 3 */ 2, /* 4 */ - 0, /* 5 */ 1, /* 6 */ 0, /* 7 */ 3, /* 8 */ 0, /* 9 */ -diff '--color=auto' -uNr a/include/id3/id3lib_frame.h b/include/id3/id3lib_frame.h ---- a/include/id3/id3lib_frame.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3/id3lib_frame.h 2025-01-30 14:01:53.586000891 -0000 -@@ -60,7 +60,7 @@ - - void Clear(); - -- bool SetID(ID3_FrameID id); -+ my_bool SetID(ID3_FrameID id); - ID3_FrameID GetID() const; - - ID3_Field* GetField(ID3_FieldID name) const; -@@ -73,22 +73,22 @@ - const char* GetTextID() const; - - ID3_Frame& operator=(const ID3_Frame &); -- bool HasChanged() const; -- bool Parse(ID3_Reader&); -+ my_bool HasChanged() const; -+ my_bool Parse(ID3_Reader&); - void Render(ID3_Writer&) const; - size_t Size(); -- bool Contains(ID3_FieldID fld) const; -- bool SetSpec(ID3_V2Spec); -+ my_bool Contains(ID3_FieldID fld) const; -+ my_bool SetSpec(ID3_V2Spec); - ID3_V2Spec GetSpec() const; - -- bool SetCompression(bool b); -- bool GetCompression() const; -+ my_bool SetCompression(my_bool b); -+ my_bool GetCompression() const; - size_t GetDataSize() const; - -- bool SetEncryptionID(uchar id); -+ my_bool SetEncryptionID(uchar id); - uchar GetEncryptionID() const; - -- bool SetGroupingID(uchar id); -+ my_bool SetGroupingID(uchar id); - uchar GetGroupingID() const; - - Iterator* CreateIterator(); -diff '--color=auto' -uNr a/include/id3/id3lib_strings.h b/include/id3/id3lib_strings.h ---- a/include/id3/id3lib_strings.h 2025-01-30 14:02:28.857444340 -0000 -+++ b/include/id3/id3lib_strings.h 2025-01-30 14:01:53.586000891 -0000 -@@ -49,11 +49,11 @@ - assign(char_type& __c1, const char_type& __c2) - { __c1 = __c2; } - -- static bool -+ static my_bool - eq(const char_type& __c1, const char_type& __c2) - { return __c1 == __c2; } - -- static bool -+ static my_bool - lt(const char_type& __c1, const char_type& __c2) - { return __c1 < __c2; } - -@@ -106,7 +106,7 @@ - static int_type - to_int_type(const char_type& __c) { return int_type(); } - -- static bool -+ static my_bool - eq_int_type(const int_type& __c1, const int_type& __c2) - { return __c1 == __c2; } - -@@ -133,11 +133,11 @@ - assign(char_type& __c1, const char_type& __c2) - { __c1 = __c2; } - -- static bool -+ static my_bool - eq(const char_type& __c1, const char_type& __c2) - { return __c1 == __c2; } - -- static bool -+ static my_bool - lt(const char_type& __c1, const char_type& __c2) - { return __c1 < __c2; } - -@@ -171,7 +171,7 @@ - static int_type - to_int_type(const char_type& __c) { return int_type(__c); } - -- static bool -+ static my_bool - eq_int_type(const int_type& __c1, const int_type& __c2) - { return __c1 == __c2; } - -diff '--color=auto' -uNr a/include/id3/io_decorators.h b/include/id3/io_decorators.h ---- a/include/id3/io_decorators.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3/io_decorators.h 2025-01-30 14:01:53.586000891 -0000 -@@ -47,7 +47,7 @@ - ID3_Reader& _reader; - pos_type _beg, _end; - -- bool inWindow(pos_type cur) -+ my_bool inWindow(pos_type cur) - { return this->getBeg() <= cur && cur < this->getEnd(); } - - public: -@@ -75,7 +75,7 @@ - pos_type getBeg() { return _beg; } - pos_type getEnd() { return _end; } - -- bool inWindow() { return this->inWindow(this->getCur()); } -+ my_bool inWindow() { return this->inWindow(this->getCur()); } - - int_type readChar(); - int_type peekChar(); -diff '--color=auto' -uNr a/include/id3/io_helpers.h b/include/id3/io_helpers.h ---- a/include/id3/io_helpers.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3/io_helpers.h 2025-01-30 14:01:53.586000891 -0000 -@@ -42,7 +42,7 @@ - { - ID3_Reader& _reader; - ID3_Reader::pos_type _pos; -- bool _locked; -+ my_bool _locked; - public: - ExitTrigger(ID3_Reader& rdr) - : _reader(rdr), _pos(rdr.getCur()), _locked(true) -@@ -70,8 +70,8 @@ - - ID3_C_EXPORT size_t writeString(ID3_Writer&, String); - ID3_C_EXPORT size_t writeText(ID3_Writer&, String); -- ID3_C_EXPORT size_t writeUnicodeString(ID3_Writer&, String, bool = true); -- ID3_C_EXPORT size_t writeUnicodeText(ID3_Writer&, String, bool = true); -+ ID3_C_EXPORT size_t writeUnicodeString(ID3_Writer&, String, my_bool = true); -+ ID3_C_EXPORT size_t writeUnicodeText(ID3_Writer&, String, my_bool = true); - ID3_C_EXPORT size_t writeBENumber(ID3_Writer&, uint32 val, size_t); - ID3_C_EXPORT size_t writeTrailingSpaces(ID3_Writer&, String, size_t); - ID3_C_EXPORT size_t writeUInt28(ID3_Writer&, uint32); -diff '--color=auto' -uNr a/include/id3/io_strings.h b/include/id3/io_strings.h ---- a/include/id3/io_strings.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3/io_strings.h 2025-01-30 14:01:53.586000891 -0000 -@@ -97,7 +97,7 @@ - return _cur; - } - -- virtual bool atEnd() -+ virtual my_bool atEnd() - { - return _cur >= _string.size(); - } -@@ -167,7 +167,7 @@ - return _cur; - } - -- virtual bool atEnd() -+ virtual my_bool atEnd() - { - return _cur >= _string.size(); - } -diff '--color=auto' -uNr a/include/id3/misc_support.h b/include/id3/misc_support.h ---- a/include/id3/misc_support.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3/misc_support.h 2025-01-30 14:01:53.586000891 -0000 -@@ -40,63 +40,63 @@ - // these are 'convenience functions,' to make using the library easier for the - // most common of operations - ID3_C_EXPORT char* ID3_GetArtist(const ID3_Tag*); --ID3_C_EXPORT ID3_Frame* ID3_AddArtist(ID3_Tag*, const char*, bool replace = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddArtist(ID3_Tag*, const char*, my_bool replace = false); - ID3_C_EXPORT size_t ID3_RemoveArtists(ID3_Tag*); - - ID3_C_EXPORT char* ID3_GetAlbum(const ID3_Tag*); --ID3_C_EXPORT ID3_Frame* ID3_AddAlbum(ID3_Tag*, const char*, bool replace = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddAlbum(ID3_Tag*, const char*, my_bool replace = false); - ID3_C_EXPORT size_t ID3_RemoveAlbums(ID3_Tag*); - - ID3_C_EXPORT char* ID3_GetTitle(const ID3_Tag*); --ID3_C_EXPORT ID3_Frame* ID3_AddTitle(ID3_Tag*, const char*, bool replace = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddTitle(ID3_Tag*, const char*, my_bool replace = false); - ID3_C_EXPORT size_t ID3_RemoveTitles(ID3_Tag*); - - ID3_C_EXPORT char* ID3_GetYear(const ID3_Tag*); --ID3_C_EXPORT ID3_Frame* ID3_AddYear(ID3_Tag*, const char*, bool replace = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddYear(ID3_Tag*, const char*, my_bool replace = false); - ID3_C_EXPORT size_t ID3_RemoveYears(ID3_Tag*); - - ID3_C_EXPORT char* ID3_GetComment(const ID3_Tag*, const char* desc = NULL); --ID3_C_EXPORT ID3_Frame* ID3_AddComment(ID3_Tag*, const char*, bool = false); --ID3_C_EXPORT ID3_Frame* ID3_AddComment(ID3_Tag*, const char*, const char*, bool = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddComment(ID3_Tag*, const char*, my_bool = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddComment(ID3_Tag*, const char*, const char*, my_bool = false); - ID3_C_EXPORT ID3_Frame* ID3_AddComment(ID3_Tag*, const char*, const char*, const char*, -- bool = false); -+ my_bool = false); - ID3_C_EXPORT size_t ID3_RemoveComments(ID3_Tag*, const char * = NULL); - - ID3_C_EXPORT char* ID3_GetTrack(const ID3_Tag*); - ID3_C_EXPORT size_t ID3_GetTrackNum(const ID3_Tag*); - //following routine courtesy of John George - ID3_C_EXPORT ID3_Frame* ID3_AddTrack(ID3_Tag*, uchar ucTrack, uchar ucTotal = 0, -- bool replace = false); -+ my_bool replace = false); - ID3_C_EXPORT size_t ID3_RemoveTracks(ID3_Tag*); - - ID3_C_EXPORT char* ID3_GetGenre(const ID3_Tag*); - ID3_C_EXPORT size_t ID3_GetGenreNum(const ID3_Tag*); --ID3_C_EXPORT ID3_Frame* ID3_AddGenre(ID3_Tag*, size_t ucGenre, bool replace = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddGenre(ID3_Tag*, size_t ucGenre, my_bool replace = false); - //following routine courtesy of John George --ID3_C_EXPORT ID3_Frame* ID3_AddGenre(ID3_Tag*, const char *, bool replace = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddGenre(ID3_Tag*, const char *, my_bool replace = false); - ID3_C_EXPORT size_t ID3_RemoveGenres(ID3_Tag*); - - ID3_C_EXPORT char* ID3_GetLyrics(const ID3_Tag*); --ID3_C_EXPORT ID3_Frame* ID3_AddLyrics(ID3_Tag*, const char*, bool = false); --ID3_C_EXPORT ID3_Frame* ID3_AddLyrics(ID3_Tag*, const char*, const char*, bool = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddLyrics(ID3_Tag*, const char*, my_bool = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddLyrics(ID3_Tag*, const char*, const char*, my_bool = false); - ID3_C_EXPORT ID3_Frame* ID3_AddLyrics(ID3_Tag*, const char*, const char*, const char*, -- bool = false); -+ my_bool = false); - ID3_C_EXPORT size_t ID3_RemoveLyrics(ID3_Tag*); - - ID3_C_EXPORT char* ID3_GetLyricist(const ID3_Tag*); --ID3_C_EXPORT ID3_Frame* ID3_AddLyricist(ID3_Tag *, const char *, bool replace = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddLyricist(ID3_Tag *, const char *, my_bool replace = false); - ID3_C_EXPORT size_t ID3_RemoveLyricist(ID3_Tag*); - - ID3_C_EXPORT ID3_Frame* ID3_AddSyncLyrics(ID3_Tag*, const uchar*, size_t, -- ID3_TimeStampFormat, bool = false); -+ ID3_TimeStampFormat, my_bool = false); - ID3_C_EXPORT ID3_Frame* ID3_AddSyncLyrics(ID3_Tag*, const uchar*, size_t, -- ID3_TimeStampFormat, const char *, bool = false); -+ ID3_TimeStampFormat, const char *, my_bool = false); - ID3_C_EXPORT ID3_Frame* ID3_AddSyncLyrics(ID3_Tag*, const uchar*, size_t, - ID3_TimeStampFormat, const char *, const char *, -- bool = false); -+ my_bool = false); - ID3_C_EXPORT ID3_Frame* ID3_AddSyncLyrics(ID3_Tag*, const uchar*, size_t, - ID3_TimeStampFormat, const char *, const char *, -- ID3_ContentType, bool = false); -+ ID3_ContentType, my_bool = false); - ID3_C_EXPORT ID3_Frame* ID3_GetSyncLyricsInfo(const ID3_Tag *tag, const char *lang, - const char *desc, char &stampformat, - char &type, size_t &size); -@@ -111,11 +111,11 @@ - ID3_C_EXPORT char* ID3_GetPictureMimeType(const ID3_Tag*); - - //following routine courtesy of John George --ID3_C_EXPORT bool ID3_HasPicture(const ID3_Tag*); -+ID3_C_EXPORT my_bool ID3_HasPicture(const ID3_Tag*); - - //following two routines courtesy of John George --ID3_C_EXPORT ID3_Frame* ID3_AddPicture(ID3_Tag*, const char* TempPicPath, const char* MimeType, bool replace = false); --ID3_C_EXPORT ID3_Frame* ID3_AddPicture(ID3_Tag*, const char* TempPicPath, const char* MimeType, ID3_PictureType pictype, const char* Description, bool replace = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddPicture(ID3_Tag*, const char* TempPicPath, const char* MimeType, my_bool replace = false); -+ID3_C_EXPORT ID3_Frame* ID3_AddPicture(ID3_Tag*, const char* TempPicPath, const char* MimeType, ID3_PictureType pictype, const char* Description, my_bool replace = false); - - //following routine courtesy of John George - ID3_C_EXPORT size_t ID3_RemovePictures(ID3_Tag*); -diff '--color=auto' -uNr a/include/id3/reader.h b/include/id3/reader.h ---- a/include/id3/reader.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3/reader.h 2025-01-30 14:01:53.586000891 -0000 -@@ -122,7 +122,7 @@ - return 0; - } - -- virtual bool atEnd() { return this->getCur() >= this->getEnd(); } -+ virtual my_bool atEnd() { return this->getCur() >= this->getEnd(); } - }; - - #endif /* _ID3LIB_READER_H_ */ -diff '--color=auto' -uNr a/include/id3/tag.h b/include/id3/tag.h ---- a/include/id3/tag.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3/tag.h 2025-01-30 14:01:53.586000891 -0000 -@@ -63,26 +63,26 @@ - virtual ~ID3_Tag(); - - void Clear(); -- bool HasChanged() const; -+ my_bool HasChanged() const; - size_t Size() const; - -- bool SetUnsync(bool); -- bool SetExtendedHeader(bool); -- bool SetExperimental(bool); -- -- bool GetUnsync() const; -- bool GetExtendedHeader() const; -- bool GetExperimental() const; -+ my_bool SetUnsync(my_bool); -+ my_bool SetExtendedHeader(my_bool); -+ my_bool SetExperimental(my_bool); -+ -+ my_bool GetUnsync() const; -+ my_bool GetExtendedHeader() const; -+ my_bool GetExperimental() const; - -- bool SetPadding(bool); -+ my_bool SetPadding(my_bool); - - void AddFrame(const ID3_Frame&); - void AddFrame(const ID3_Frame*); -- bool AttachFrame(ID3_Frame*); -+ my_bool AttachFrame(ID3_Frame*); - ID3_Frame* RemoveFrame(const ID3_Frame *); - - size_t Parse(const uchar*, size_t); -- bool Parse(ID3_Reader& reader); -+ my_bool Parse(ID3_Reader& reader); - size_t Render(uchar*, ID3_TagType = ID3TT_ID3V2) const; - size_t Render(ID3_Writer&, ID3_TagType = ID3TT_ID3V2) const; - -@@ -110,21 +110,21 @@ - - ID3_Tag& operator=( const ID3_Tag & ); - -- bool HasTagType(ID3_TagType tt) const; -+ my_bool HasTagType(ID3_TagType tt) const; - ID3_V2Spec GetSpec() const; -- bool SetSpec(ID3_V2Spec); -+ my_bool SetSpec(ID3_V2Spec); - - static size_t IsV2Tag(const uchar*); - static size_t IsV2Tag(ID3_Reader&); - - /* Deprecated! */ - void AddNewFrame(ID3_Frame* f); -- size_t Link(const char *fileInfo, bool parseID3v1, bool parseLyrics3); -- void SetCompression(bool); -+ size_t Link(const char *fileInfo, my_bool parseID3v1, my_bool parseLyrics3); -+ void SetCompression(my_bool); - void AddFrames(const ID3_Frame *, size_t); -- bool HasLyrics() const; -- bool HasV2Tag() const; -- bool HasV1Tag() const; -+ my_bool HasLyrics() const; -+ my_bool HasV2Tag() const; -+ my_bool HasV1Tag() const; - size_t Parse(const uchar header[ID3_TAGHEADERSIZE], const uchar *buffer); - //ID3_Frame* operator[](size_t) const; - //ID3_Frame* GetFrameNum(size_t) const; -diff '--color=auto' -uNr a/include/id3/writer.h b/include/id3/writer.h ---- a/include/id3/writer.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3/writer.h 2025-01-30 14:01:53.586000891 -0000 -@@ -89,7 +89,7 @@ - return this->writeChars(reinterpret_cast<const char_type *>(buf), len); - } - -- virtual bool atEnd() -+ virtual my_bool atEnd() - { - return this->getCur() >= this->getEnd(); - } -diff '--color=auto' -uNr a/include/id3.h b/include/id3.h ---- a/include/id3.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/include/id3.h 2025-01-30 14:01:53.586000891 -0000 -@@ -47,12 +47,12 @@ - ID3_C_EXPORT ID3Tag* CCONV ID3Tag_New (void); - ID3_C_EXPORT void CCONV ID3Tag_Delete (ID3Tag *tag); - ID3_C_EXPORT void CCONV ID3Tag_Clear (ID3Tag *tag); -- ID3_C_EXPORT bool CCONV ID3Tag_HasChanged (const ID3Tag *tag); -- ID3_C_EXPORT void CCONV ID3Tag_SetUnsync (ID3Tag *tag, bool unsync); -- ID3_C_EXPORT void CCONV ID3Tag_SetExtendedHeader (ID3Tag *tag, bool ext); -- ID3_C_EXPORT void CCONV ID3Tag_SetPadding (ID3Tag *tag, bool pad); -+ ID3_C_EXPORT my_bool CCONV ID3Tag_HasChanged (const ID3Tag *tag); -+ ID3_C_EXPORT void CCONV ID3Tag_SetUnsync (ID3Tag *tag, my_bool unsync); -+ ID3_C_EXPORT void CCONV ID3Tag_SetExtendedHeader (ID3Tag *tag, my_bool ext); -+ ID3_C_EXPORT void CCONV ID3Tag_SetPadding (ID3Tag *tag, my_bool pad); - ID3_C_EXPORT void CCONV ID3Tag_AddFrame (ID3Tag *tag, const ID3Frame *frame); -- ID3_C_EXPORT bool CCONV ID3Tag_AttachFrame (ID3Tag *tag, ID3Frame *frame); -+ ID3_C_EXPORT my_bool CCONV ID3Tag_AttachFrame (ID3Tag *tag, ID3Frame *frame); - ID3_C_EXPORT void CCONV ID3Tag_AddFrames (ID3Tag *tag, const ID3Frame *frames, size_t num); - ID3_C_EXPORT ID3Frame* CCONV ID3Tag_RemoveFrame (ID3Tag *tag, const ID3Frame *frame); - ID3_C_EXPORT ID3_Err CCONV ID3Tag_Parse (ID3Tag *tag, const uchar header[ID3_TAGHEADERSIZE], const uchar *buffer); -@@ -66,7 +66,7 @@ - ID3_C_EXPORT ID3Frame* CCONV ID3Tag_FindFrameWithASCII (const ID3Tag *tag, ID3_FrameID id, ID3_FieldID fld, const char *data); - ID3_C_EXPORT ID3Frame* CCONV ID3Tag_FindFrameWithUNICODE (const ID3Tag *tag, ID3_FrameID id, ID3_FieldID fld, const unicode_t *data); - ID3_C_EXPORT size_t CCONV ID3Tag_NumFrames (const ID3Tag *tag); -- ID3_C_EXPORT bool CCONV ID3Tag_HasTagType (const ID3Tag *tag, ID3_TagType); -+ ID3_C_EXPORT my_bool CCONV ID3Tag_HasTagType (const ID3Tag *tag, ID3_TagType); - ID3_C_EXPORT ID3TagIterator* CCONV ID3Tag_CreateIterator (ID3Tag *tag); - ID3_C_EXPORT ID3TagConstIterator* CCONV ID3Tag_CreateConstIterator (const ID3Tag *tag); - -@@ -83,8 +83,8 @@ - ID3_C_EXPORT void CCONV ID3Frame_SetID (ID3Frame *frame, ID3_FrameID id); - ID3_C_EXPORT ID3_FrameID CCONV ID3Frame_GetID (const ID3Frame *frame); - ID3_C_EXPORT ID3Field* CCONV ID3Frame_GetField (const ID3Frame *frame, ID3_FieldID name); -- ID3_C_EXPORT void CCONV ID3Frame_SetCompression (ID3Frame *frame, bool comp); -- ID3_C_EXPORT bool CCONV ID3Frame_GetCompression (const ID3Frame *frame); -+ ID3_C_EXPORT void CCONV ID3Frame_SetCompression (ID3Frame *frame, my_bool comp); -+ ID3_C_EXPORT my_bool CCONV ID3Frame_GetCompression (const ID3Frame *frame); - - /* field wrappers */ - ID3_C_EXPORT void CCONV ID3Field_Clear (ID3Field *field); -@@ -116,7 +116,7 @@ - ID3_C_EXPORT flags_t CCONV ID3FrameInfo_FieldFlags (ID3_FrameID frameid, int fieldnum); - - /* Deprecated */ -- ID3_C_EXPORT void CCONV ID3Tag_SetCompression (ID3Tag *tag, bool comp); -+ ID3_C_EXPORT void CCONV ID3Tag_SetCompression (ID3Tag *tag, my_bool comp); - - #ifdef __cplusplus - } -diff '--color=auto' -uNr a/src/c_wrapper.cpp b/src/c_wrapper.cpp ---- a/src/c_wrapper.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/c_wrapper.cpp 2025-01-30 14:01:53.586000891 -0000 -@@ -72,10 +72,10 @@ - } - - -- ID3_C_EXPORT bool CCONV -+ ID3_C_EXPORT my_bool CCONV - ID3Tag_HasChanged(const ID3Tag *tag) - { -- bool changed = false; -+ my_bool changed = false; - - if (tag) - { -@@ -87,7 +87,7 @@ - - - ID3_C_EXPORT void CCONV -- ID3Tag_SetUnsync(ID3Tag *tag, bool unsync) -+ ID3Tag_SetUnsync(ID3Tag *tag, my_bool unsync) - { - if (tag) - { -@@ -97,7 +97,7 @@ - - - ID3_C_EXPORT void CCONV -- ID3Tag_SetExtendedHeader(ID3Tag *tag, bool ext) -+ ID3Tag_SetExtendedHeader(ID3Tag *tag, my_bool ext) - { - if (tag) - { -@@ -106,7 +106,7 @@ - } - - ID3_C_EXPORT void CCONV -- ID3Tag_SetPadding(ID3Tag *tag, bool pad) -+ ID3Tag_SetPadding(ID3Tag *tag, my_bool pad) - { - if (tag) - { -@@ -125,10 +125,10 @@ - } - - -- ID3_C_EXPORT bool CCONV -+ ID3_C_EXPORT my_bool CCONV - ID3Tag_AttachFrame(ID3Tag *tag, ID3Frame *frame) - { -- bool b = false; -+ my_bool b = false; - if (tag) - { - ID3_CATCH(b = reinterpret_cast<ID3_Tag *>(tag)->AttachFrame(reinterpret_cast<ID3_Frame *>(frame))); -@@ -303,10 +303,10 @@ - } - - -- ID3_C_EXPORT bool CCONV -+ ID3_C_EXPORT my_bool CCONV - ID3Tag_HasTagType(const ID3Tag *tag, ID3_TagType tt) - { -- bool has_tt = false; -+ my_bool has_tt = false; - - if (tag) - { -@@ -459,7 +459,7 @@ - - - ID3_C_EXPORT void CCONV -- ID3Frame_SetCompression(ID3Frame *frame, bool comp) -+ ID3Frame_SetCompression(ID3Frame *frame, my_bool comp) - { - if (frame) - { -@@ -468,10 +468,10 @@ - } - - -- ID3_C_EXPORT bool CCONV -+ ID3_C_EXPORT my_bool CCONV - ID3Frame_GetCompression(const ID3Frame *frame) - { -- bool compressed = false; -+ my_bool compressed = false; - if (frame) - { - ID3_CATCH(compressed = reinterpret_cast<const ID3_Frame *>(frame)->GetCompression()); -diff '--color=auto' -uNr a/src/field.cpp b/src/field.cpp ---- a/src/field.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/field.cpp 2025-01-30 14:01:53.586000891 -0000 -@@ -964,7 +964,7 @@ - return ; - } - --bool -+my_bool - ID3_FieldImpl::HasChanged() const - { - return _changed; -@@ -1040,9 +1040,9 @@ - return size; - } - --bool ID3_FieldImpl::Parse(ID3_Reader& reader) -+my_bool ID3_FieldImpl::Parse(ID3_Reader& reader) - { -- bool success = false; -+ my_bool success = false; - switch (this->GetType()) - { - case ID3FTY_INTEGER: -@@ -1172,9 +1172,9 @@ - return *this; - } - --bool ID3_FieldImpl::SetEncoding(ID3_TextEnc enc) -+my_bool ID3_FieldImpl::SetEncoding(ID3_TextEnc enc) - { -- bool changed = this->IsEncodable() && (enc != this->GetEncoding()) && -+ my_bool changed = this->IsEncodable() && (enc != this->GetEncoding()) && - (ID3TE_NONE < enc && enc < ID3TE_NUMENCODINGS); - if (changed) - { -diff '--color=auto' -uNr a/src/field_binary.cpp b/src/field_binary.cpp ---- a/src/field_binary.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/field_binary.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -192,7 +192,7 @@ - } - - --bool ID3_FieldImpl::ParseBinary(ID3_Reader& reader) -+my_bool ID3_FieldImpl::ParseBinary(ID3_Reader& reader) - { - // copy the remaining bytes, unless we're fixed length, in which case copy - // the minimum of the remaining bytes vs. the fixed length -diff '--color=auto' -uNr a/src/field_impl.h b/src/field_impl.h ---- a/src/field_impl.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/field_impl.h 2025-01-30 14:01:53.586000891 -0000 -@@ -96,19 +96,19 @@ - - // miscelaneous functions - ID3_Field& operator=( const ID3_Field & ); -- bool InScope(ID3_V2Spec spec) const -+ my_bool InScope(ID3_V2Spec spec) const - { return _spec_begin <= spec && spec <= _spec_end; } - - ID3_FieldID GetID() const { return _id; } - ID3_FieldType GetType() const { return _type; } -- bool SetEncoding(ID3_TextEnc enc); -+ my_bool SetEncoding(ID3_TextEnc enc); - ID3_TextEnc GetEncoding() const { return _enc; } -- bool IsEncodable() const { return (_flags & ID3FF_ENCODABLE) > 0; } -+ my_bool IsEncodable() const { return (_flags & ID3FF_ENCODABLE) > 0; } - - - void Render(ID3_Writer&) const; -- bool Parse(ID3_Reader&); -- bool HasChanged() const; -+ my_bool Parse(ID3_Reader&); -+ my_bool HasChanged() const; - - private: - size_t SetText_i(dami::String); -@@ -124,7 +124,7 @@ - const ID3_V2Spec _spec_begin; // spec end - const ID3_V2Spec _spec_end; // spec begin - const flags_t _flags; // special field flags -- mutable bool _changed; // field changed since last parse/render? -+ mutable my_bool _changed; // field changed since last parse/render? - - dami::BString _binary; // for binary strings - dami::String _text; // for ascii strings -@@ -138,9 +138,9 @@ - void RenderText(ID3_Writer&) const; - void RenderBinary(ID3_Writer&) const; - -- bool ParseInteger(ID3_Reader&); -- bool ParseText(ID3_Reader&); -- bool ParseBinary(ID3_Reader&); -+ my_bool ParseInteger(ID3_Reader&); -+ my_bool ParseText(ID3_Reader&); -+ my_bool ParseBinary(ID3_Reader&); - - }; - -diff '--color=auto' -uNr a/src/field_integer.cpp b/src/field_integer.cpp ---- a/src/field_integer.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/field_integer.cpp 2025-01-30 14:01:53.586000891 -0000 -@@ -84,12 +84,12 @@ - return val; - } - --bool ID3_FieldImpl::ParseInteger(ID3_Reader& reader) -+my_bool ID3_FieldImpl::ParseInteger(ID3_Reader& reader) - { - ID3D_NOTICE( "ID3_FieldImpl::ParseInteger(): beg = " << reader.getBeg() ); - ID3D_NOTICE( "ID3_FieldImpl::ParseInteger(): cur = " << reader.getCur() ); - ID3D_NOTICE( "ID3_FieldImpl::ParseInteger(): end = " << reader.getEnd() ); -- bool success = false; -+ my_bool success = false; - if (!reader.atEnd()) - { - this->Clear(); -diff '--color=auto' -uNr a/src/field_string_ascii.cpp b/src/field_string_ascii.cpp ---- a/src/field_string_ascii.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/field_string_ascii.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -324,7 +324,7 @@ - } - } - --bool ID3_FieldImpl::ParseText(ID3_Reader& reader) -+my_bool ID3_FieldImpl::ParseText(ID3_Reader& reader) - { - ID3D_NOTICE( "ID3_Field::ParseText(): reader.getBeg() = " << reader.getBeg() ); - ID3D_NOTICE( "ID3_Field::ParseText(): reader.getCur() = " << reader.getCur() ); -diff '--color=auto' -uNr a/src/flags.h b/src/flags.h ---- a/src/flags.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/flags.h 2025-01-30 14:01:53.586000891 -0000 -@@ -39,12 +39,12 @@ - virtual ~ID3_Flags() { ; } - - TYPE get() const { return _f; } -- bool test(TYPE f) const { return (this->get() & f) == f; } -- bool set(TYPE f) { bool r = (_f != f); _f = f; return r; } -- bool add(TYPE f) { return this->set(this->get() | f); } -- bool remove(TYPE f) { return this->set(this->get() & ~f); } -- bool clear() { return this->set(0); } -- bool set(TYPE f, bool b){ if (b) return this->add(f); return this->remove(f); } -+ my_bool test(TYPE f) const { return (this->get() & f) == f; } -+ my_bool set(TYPE f) { my_bool r = (_f != f); _f = f; return r; } -+ my_bool add(TYPE f) { return this->set(this->get() | f); } -+ my_bool remove(TYPE f) { return this->set(this->get() & ~f); } -+ my_bool clear() { return this->set(0); } -+ my_bool set(TYPE f, my_bool b){ if (b) return this->add(f); return this->remove(f); } - - ID3_Flags& operator=(const ID3_Flags& f) - { if (this != &f) { this->set(f.get()); } return *this; } -diff '--color=auto' -uNr a/src/frame.cpp b/src/frame.cpp ---- a/src/frame.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/frame.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -113,12 +113,12 @@ - ** @param id The type of frame this frame should be set to - ** @see ID3_FrameID - **/ --bool ID3_Frame::SetID(ID3_FrameID id) -+my_bool ID3_Frame::SetID(ID3_FrameID id) - { - return _impl->SetID(id); - } - --bool ID3_Frame::SetSpec(ID3_V2Spec spec) -+my_bool ID3_Frame::SetSpec(ID3_V2Spec spec) - { - return _impl->SetSpec(spec); - } -@@ -167,7 +167,7 @@ - } - - --bool ID3_Frame::HasChanged() const -+my_bool ID3_Frame::HasChanged() const - { - return _impl->HasChanged(); - } -@@ -196,7 +196,7 @@ - return _impl->GetTextID(); - } - --bool ID3_Frame::Parse(ID3_Reader& reader) -+my_bool ID3_Frame::Parse(ID3_Reader& reader) - { - return _impl->Parse(reader); - } -@@ -206,7 +206,7 @@ - _impl->Render(writer); - } - --bool ID3_Frame::Contains(ID3_FieldID id) const -+my_bool ID3_Frame::Contains(ID3_FieldID id) const - { - return _impl->Contains(id); - } -@@ -216,7 +216,7 @@ - ** actually be compressed after it is rendered if the "compressed" data is - ** no smaller than the "uncompressed" data. - **/ --bool ID3_Frame::SetCompression(bool b) -+my_bool ID3_Frame::SetCompression(my_bool b) - { - return _impl->SetCompression(b); - } -@@ -229,7 +229,7 @@ - ** flag is set, if the "compressed" data is no smaller than the - ** "uncompressed" data. - **/ --bool ID3_Frame::GetCompression() const -+my_bool ID3_Frame::GetCompression() const - { - return _impl->GetCompression(); - } -@@ -239,7 +239,7 @@ - return _impl->GetDataSize(); - } - --bool ID3_Frame::SetEncryptionID(uchar id) -+my_bool ID3_Frame::SetEncryptionID(uchar id) - { - return _impl->SetEncryptionID(id); - } -@@ -249,7 +249,7 @@ - return _impl->GetEncryptionID(); - } - --bool ID3_Frame::SetGroupingID(uchar id) -+my_bool ID3_Frame::SetGroupingID(uchar id) - { - return _impl->SetGroupingID(id); - } -diff '--color=auto' -uNr a/src/frame_def.h b/src/frame_def.h ---- a/src/frame_def.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/frame_def.h 2025-01-30 14:01:53.586000891 -0000 -@@ -38,8 +38,8 @@ - ID3_FrameID eID; - char sShortTextID[3 + 1]; - char sLongTextID[4 + 1]; -- bool bTagDiscard; -- bool bFileDiscard; -+ my_bool bTagDiscard; -+ my_bool bFileDiscard; - const ID3_FieldDef* aeFieldDefs; - const char * sDescription; - }; -diff '--color=auto' -uNr a/src/frame_impl.cpp b/src/frame_impl.cpp ---- a/src/frame_impl.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/frame_impl.cpp 2025-01-30 14:01:53.586000891 -0000 -@@ -72,7 +72,7 @@ - Clear(); - } - --bool ID3_FrameImpl::_ClearFields() -+my_bool ID3_FrameImpl::_ClearFields() - { - for (iterator fi = _fields.begin(); fi != _fields.end(); ++fi) - { -@@ -118,9 +118,9 @@ - } - } - --bool ID3_FrameImpl::SetID(ID3_FrameID id) -+my_bool ID3_FrameImpl::SetID(ID3_FrameID id) - { -- bool changed = (this->GetID() != id); -+ my_bool changed = (this->GetID() != id); - if (changed) - { - this->_SetID(id); -@@ -129,15 +129,15 @@ - return changed; - } - --bool ID3_FrameImpl::_SetID(ID3_FrameID id) -+my_bool ID3_FrameImpl::_SetID(ID3_FrameID id) - { -- bool changed = this->_ClearFields(); -+ my_bool changed = this->_ClearFields(); - changed = _hdr.SetFrameID(id) || changed; - this->_InitFields(); - return changed; - } - --bool ID3_FrameImpl::SetSpec(ID3_V2Spec spec) -+my_bool ID3_FrameImpl::SetSpec(ID3_V2Spec spec) - { - return _hdr.SetSpec(spec); - } -@@ -204,9 +204,9 @@ - } - - --bool ID3_FrameImpl::HasChanged() const -+my_bool ID3_FrameImpl::HasChanged() const - { -- bool changed = _changed; -+ my_bool changed = _changed; - - for (const_iterator fi = _fields.begin(); fi != _fields.end(); ++fi) - { -diff '--color=auto' -uNr a/src/frame_impl.h b/src/frame_impl.h ---- a/src/frame_impl.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/frame_impl.h 2025-01-30 14:01:53.586000891 -0000 -@@ -55,7 +55,7 @@ - - void Clear(); - -- bool SetID(ID3_FrameID id); -+ my_bool SetID(ID3_FrameID id); - ID3_FrameID GetID() const { return _hdr.GetFrameID(); } - - ID3_Field* GetField(ID3_FieldID name) const; -@@ -68,13 +68,13 @@ - const char* GetTextID() const { return _hdr.GetTextID(); } - - ID3_FrameImpl& operator=(const ID3_Frame &); -- bool HasChanged() const; -- bool Parse(ID3_Reader&); -+ my_bool HasChanged() const; -+ my_bool Parse(ID3_Reader&); - void Render(ID3_Writer&) const; - size_t Size(); -- bool Contains(ID3_FieldID fld) const -+ my_bool Contains(ID3_FieldID fld) const - { return _bitset.test(fld); } -- bool SetSpec(ID3_V2Spec); -+ my_bool SetSpec(ID3_V2Spec); - ID3_V2Spec GetSpec() const; - - /** Sets the compression flag within the frame. When the compression flag is -@@ -82,7 +82,7 @@ - ** actually be compressed after it is rendered if the "compressed" data is - ** no smaller than the "uncompressed" data. - **/ -- bool SetCompression(bool b) { return _hdr.SetCompression(b); } -+ my_bool SetCompression(my_bool b) { return _hdr.SetCompression(b); } - /** Returns whether or not the compression flag is set. After parsing a tag, - ** this will indicate whether or not the frame was compressed. After - ** rendering a tag, however, it does not actually indicate if the frame is -@@ -91,21 +91,21 @@ - ** flag is set, if the "compressed" data is no smaller than the - ** "uncompressed" data. - **/ -- bool GetCompression() const { return _hdr.GetCompression(); } -+ my_bool GetCompression() const { return _hdr.GetCompression(); } - size_t GetDataSize() const { return _hdr.GetDataSize(); } - -- bool SetEncryptionID(uchar id) -+ my_bool SetEncryptionID(uchar id) - { -- bool changed = id != _encryption_id; -+ my_bool changed = id != _encryption_id; - _encryption_id = id; - _changed = _changed || changed; - _hdr.SetEncryption(true); - return changed; - } - uchar GetEncryptionID() const { return _encryption_id; } -- bool SetGroupingID(uchar id) -+ my_bool SetGroupingID(uchar id) - { -- bool changed = id != _grouping_id; -+ my_bool changed = id != _grouping_id; - _grouping_id = id; - _changed = _changed || changed; - _hdr.SetGrouping(true); -@@ -119,14 +119,14 @@ - const_iterator end() const { return _fields.end(); } - - protected: -- bool _SetID(ID3_FrameID); -- bool _ClearFields(); -+ my_bool _SetID(ID3_FrameID); -+ my_bool _ClearFields(); - void _InitFields(); - void _InitFieldBits(); - void _UpdateFieldDeps(); - - private: -- mutable bool _changed; // frame changed since last parse/render? -+ mutable my_bool _changed; // frame changed since last parse/render? - Bitset _bitset; // which fields are present? - Fields _fields; - ID3_FrameHeader _hdr; // -diff '--color=auto' -uNr a/src/frame_parse.cpp b/src/frame_parse.cpp ---- a/src/frame_parse.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/frame_parse.cpp 2025-01-30 14:01:53.586000891 -0000 -@@ -35,7 +35,7 @@ - - namespace - { -- bool parseFields(ID3_Reader& rdr, ID3_FrameImpl& frame) -+ my_bool parseFields(ID3_Reader& rdr, ID3_FrameImpl& frame) - { - int iLoop; - int iFields; -@@ -106,7 +106,7 @@ - } - }; - --bool ID3_FrameImpl::Parse(ID3_Reader& reader) -+my_bool ID3_FrameImpl::Parse(ID3_Reader& reader) - { - io::ExitTrigger et(reader); - ID3D_NOTICE( "ID3_FrameImpl::Parse(): reader.getBeg() = " << reader.getBeg() ); -@@ -160,7 +160,7 @@ - this->_ClearFields(); - this->_InitFields(); - -- bool success = false; -+ my_bool success = false; - // expand out the data if it's compressed - if (!_hdr.GetCompression()) - { -diff '--color=auto' -uNr a/src/header.cpp b/src/header.cpp ---- a/src/header.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/header.cpp 2025-01-30 14:01:53.586000891 -0000 -@@ -31,7 +31,7 @@ - #include <config.h> - #endif - --bool ID3_Header::SetSpec(ID3_V2Spec spec) -+my_bool ID3_Header::SetSpec(ID3_V2Spec spec) - { - static ID3_Header::Info _spec_info[] = - { -@@ -44,7 +44,7 @@ - { 4, 4, 2, false, 6, false } // ID3V2_4_0 - }; - -- bool changed = false; -+ my_bool changed = false; - if (spec < ID3V2_EARLIEST || spec > ID3V2_LATEST) - { - changed = _spec != ID3V2_UNKNOWN; -diff '--color=auto' -uNr a/src/header.h b/src/header.h ---- a/src/header.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/header.h 2025-01-30 14:01:53.586000891 -0000 -@@ -43,9 +43,9 @@ - uchar frame_bytes_id; - uchar frame_bytes_size; - uchar frame_bytes_flags; -- bool is_extended; -+ my_bool is_extended; - size_t extended_bytes; //including the extended header, so everything! -- bool is_experimental; -+ my_bool is_experimental; - }; - - ID3_Header() -@@ -58,21 +58,21 @@ - } - virtual ~ID3_Header() { ; } - -- virtual bool SetSpec(ID3_V2Spec); -+ virtual my_bool SetSpec(ID3_V2Spec); - /* */ ID3_V2Spec GetSpec() const { return _spec; } - -- /* */ bool SetDataSize(size_t size) -+ /* */ my_bool SetDataSize(size_t size) - { -- bool changed = size != _data_size; -+ my_bool changed = size != _data_size; - _changed = _changed || changed; - _data_size = size; - return changed; - } - /* */ size_t GetDataSize() const { return _data_size; } - -- virtual bool Clear() -+ virtual my_bool Clear() - { -- bool changed = this->SetDataSize(0); -+ my_bool changed = this->SetDataSize(0); - if (this->GetSpec() == ID3V2_UNKNOWN) - { - this->SetSpec(ID3V2_LATEST); -@@ -85,7 +85,7 @@ - virtual size_t Size() const = 0; - - virtual void Render(ID3_Writer&) const = 0; -- virtual bool Parse(ID3_Reader&) = 0; -+ virtual my_bool Parse(ID3_Reader&) = 0; - - ID3_Header &operator=( const ID3_Header &rhs) - { -@@ -103,7 +103,7 @@ - size_t _data_size; // how big is the data? - ID3_Flags _flags; // header flags - Info* _info; // header info w.r.t. id3v2 spec -- bool _changed; // has the header changed since parsing -+ my_bool _changed; // has the header changed since parsing - } - ; - -diff '--color=auto' -uNr a/src/header_frame.cpp b/src/header_frame.cpp ---- a/src/header_frame.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/header_frame.cpp 2025-01-30 14:01:53.586000891 -0000 -@@ -62,7 +62,7 @@ - _dyn_frame_def = true; - } - --bool ID3_FrameHeader::SetFrameID(ID3_FrameID id) -+my_bool ID3_FrameHeader::SetFrameID(ID3_FrameID id) - { - if (id == ID3FID_NOFRAME || id == this->GetFrameID()) - { -@@ -88,7 +88,7 @@ - _info->frame_bytes_flags; - } - --bool ID3_FrameHeader::Parse(ID3_Reader& reader) -+my_bool ID3_FrameHeader::Parse(ID3_Reader& reader) - { - ID3D_NOTICE( "ID3_FrameHeader::Parse(): getCur() = " << reader.getCur() ); - io::ExitTrigger et(reader); -@@ -222,9 +222,9 @@ - return _frame_def; - } - --bool ID3_FrameHeader::Clear() -+my_bool ID3_FrameHeader::Clear() - { -- bool changed = this->ID3_Header::Clear(); -+ my_bool changed = this->ID3_Header::Clear(); - if (_dyn_frame_def) - { - delete _frame_def; -diff '--color=auto' -uNr a/src/header_frame.h b/src/header_frame.h ---- a/src/header_frame.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/header_frame.h 2025-01-30 14:01:53.586000891 -0000 -@@ -51,29 +51,29 @@ - virtual ~ID3_FrameHeader() { this->Clear(); } - - /* */ size_t Size() const; -- /* */ bool Parse(ID3_Reader&); -+ /* */ my_bool Parse(ID3_Reader&); - /* */ void Render(ID3_Writer&) const; -- /* */ bool SetFrameID(ID3_FrameID id); -+ /* */ my_bool SetFrameID(ID3_FrameID id); - /* */ ID3_FrameID GetFrameID() const; - const char* GetTextID() const; - const ID3_FrameDef* GetFrameDef() const; -- /* */ bool Clear(); -+ /* */ my_bool Clear(); - ID3_FrameHeader& operator=(const ID3_FrameHeader&); - -- bool SetCompression(bool b) { return this->SetFlags(COMPRESSION, b); } -- bool SetEncryption(bool b) { return this->SetFlags(ENCRYPTION, b); } -- bool SetGrouping(bool b) { return this->SetFlags(GROUPING, b); } -- -- bool GetCompression() const { return _flags.test(COMPRESSION); } -- bool GetEncryption() const { return _flags.test(ENCRYPTION); } -- bool GetGrouping() const { return _flags.test(GROUPING); } -- bool GetReadOnly() const { return _flags.test(READONLY); } -+ my_bool SetCompression(my_bool b) { return this->SetFlags(COMPRESSION, b); } -+ my_bool SetEncryption(my_bool b) { return this->SetFlags(ENCRYPTION, b); } -+ my_bool SetGrouping(my_bool b) { return this->SetFlags(GROUPING, b); } -+ -+ my_bool GetCompression() const { return _flags.test(COMPRESSION); } -+ my_bool GetEncryption() const { return _flags.test(ENCRYPTION); } -+ my_bool GetGrouping() const { return _flags.test(GROUPING); } -+ my_bool GetReadOnly() const { return _flags.test(READONLY); } - void SetUnknownFrame(const char*); - - protected: -- bool SetFlags(uint16 f, bool b) -+ my_bool SetFlags(uint16 f, my_bool b) - { -- bool changed = _flags.set(f, b); -+ my_bool changed = _flags.set(f, b); - _changed = _changed || changed; - return changed; - } -@@ -82,7 +82,7 @@ - - private: - ID3_FrameDef* _frame_def; -- bool _dyn_frame_def; -+ my_bool _dyn_frame_def; - } - ; - -diff '--color=auto' -uNr a/src/header_tag.cpp b/src/header_tag.cpp ---- a/src/header_tag.cpp 2025-01-30 14:02:28.873444087 -0000 -+++ b/src/header_tag.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -36,9 +36,9 @@ - - const char* const ID3_TagHeader::ID = "ID3"; - --bool ID3_TagHeader::SetSpec(ID3_V2Spec spec) -+my_bool ID3_TagHeader::SetSpec(ID3_V2Spec spec) - { -- bool changed = this->ID3_Header::SetSpec(spec); -+ my_bool changed = this->ID3_Header::SetSpec(spec); - if (changed) - { - if (_info) -@@ -98,7 +98,7 @@ - } - } - --bool ID3_TagHeader::Parse(ID3_Reader& reader) -+my_bool ID3_TagHeader::Parse(ID3_Reader& reader) - { - io::ExitTrigger et(reader); - if (!ID3_Tag::IsV2Tag(reader)) -diff '--color=auto' -uNr a/src/header_tag.h b/src/header_tag.h ---- a/src/header_tag.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/header_tag.h 2025-01-30 14:01:53.590000827 -0000 -@@ -55,42 +55,42 @@ - virtual ~ID3_TagHeader() { ; } - ID3_TagHeader(const ID3_TagHeader& rhs) : ID3_Header() { *this = rhs; } - -- bool SetSpec(ID3_V2Spec); -+ my_bool SetSpec(ID3_V2Spec); - size_t Size() const; - void Render(ID3_Writer&) const; -- bool Parse(ID3_Reader&); -+ my_bool Parse(ID3_Reader&); - void ParseExtended(ID3_Reader&); - ID3_TagHeader& operator=(const ID3_TagHeader&hdr) - { this->ID3_Header::operator=(hdr); return *this; } - -- bool SetUnsync(bool b) -+ my_bool SetUnsync(my_bool b) - { -- bool changed = _flags.set(HEADER_FLAG_UNSYNC, b); -+ my_bool changed = _flags.set(HEADER_FLAG_UNSYNC, b); - _changed = _changed || changed; - return changed; - } -- bool GetUnsync() const { return _flags.test(HEADER_FLAG_UNSYNC); } -- bool SetExtended(bool b) -+ my_bool GetUnsync() const { return _flags.test(HEADER_FLAG_UNSYNC); } -+ my_bool SetExtended(my_bool b) - { -- bool changed = _flags.set(HEADER_FLAG_EXTENDED, b); -+ my_bool changed = _flags.set(HEADER_FLAG_EXTENDED, b); - _changed = _changed || changed; - return changed; - } -- bool GetExtended() const { return _flags.test(HEADER_FLAG_EXTENDED); } -- bool SetExperimental(bool b) -+ my_bool GetExtended() const { return _flags.test(HEADER_FLAG_EXTENDED); } -+ my_bool SetExperimental(my_bool b) - { -- bool changed = _flags.set(HEADER_FLAG_EXPERIMENTAL, b); -+ my_bool changed = _flags.set(HEADER_FLAG_EXPERIMENTAL, b); - _changed = _changed || changed; - return changed; - } -- bool GetExperimental() const { return _flags.test(HEADER_FLAG_EXPERIMENTAL); } -- bool SetFooter(bool b) -+ my_bool GetExperimental() const { return _flags.test(HEADER_FLAG_EXPERIMENTAL); } -+ my_bool SetFooter(my_bool b) - { -- bool changed = _flags.set(HEADER_FLAG_FOOTER, b); -+ my_bool changed = _flags.set(HEADER_FLAG_FOOTER, b); - _changed = _changed || changed; - return changed; - } -- bool GetFooter() const { return _flags.test(HEADER_FLAG_FOOTER); } -+ my_bool GetFooter() const { return _flags.test(HEADER_FLAG_FOOTER); } - - // id3v2 tag header signature: $49 44 33 MM mm GG ss ss ss ss - // MM = major version (will never be 0xFF) -diff '--color=auto' -uNr a/src/io_helpers.cpp b/src/io_helpers.cpp ---- a/src/io_helpers.cpp 2025-01-30 14:02:28.845444530 -0000 -+++ b/src/io_helpers.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -65,7 +65,7 @@ - - namespace - { -- bool isNull(unsigned char ch1, unsigned char ch2) -+ my_bool isNull(unsigned char ch1, unsigned char ch2) - { - return ch1 == '\0' && ch2 == '\0'; - } -@@ -102,7 +102,7 @@ - return 0; - } - -- bool readTwoChars(ID3_Reader& reader, -+ my_bool readTwoChars(ID3_Reader& reader, - ID3_Reader::char_type& ch1, - ID3_Reader::char_type& ch2) - { -@@ -342,7 +342,7 @@ - return writer.getCur() - beg; - } - --size_t io::writeUnicodeString(ID3_Writer& writer, String data, bool bom) -+size_t io::writeUnicodeString(ID3_Writer& writer, String data, my_bool bom) - { - size_t size = writeUnicodeText(writer, data, bom); - unicode_t null = NULL_UNICODE; -@@ -350,7 +350,7 @@ - return size + 2; - } - --size_t io::writeUnicodeText(ID3_Writer& writer, String data, bool bom) -+size_t io::writeUnicodeText(ID3_Writer& writer, String data, my_bool bom) - { - ID3_Writer::pos_type beg = writer.getCur(); - size_t size = (data.size() / 2) * 2; -diff '--color=auto' -uNr a/src/misc_support.cpp b/src/misc_support.cpp ---- a/src/misc_support.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/misc_support.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -89,7 +89,7 @@ - return sArtist; - } - --ID3_Frame* ID3_AddArtist(ID3_Tag *tag, const char *text, bool replace) -+ID3_Frame* ID3_AddArtist(ID3_Tag *tag, const char *text, my_bool replace) - { - ID3_Frame* frame = NULL; - if (NULL != tag && NULL != text && strlen(text) > 0) -@@ -169,7 +169,7 @@ - return sAlbum; - } - --ID3_Frame* ID3_AddAlbum(ID3_Tag *tag, const char *text, bool replace) -+ID3_Frame* ID3_AddAlbum(ID3_Tag *tag, const char *text, my_bool replace) - { - ID3_Frame* frame = NULL; - if (NULL != tag && NULL != text && strlen(text) > 0) -@@ -228,7 +228,7 @@ - return sTitle; - } - --ID3_Frame* ID3_AddTitle(ID3_Tag *tag, const char *text, bool replace) -+ID3_Frame* ID3_AddTitle(ID3_Tag *tag, const char *text, my_bool replace) - { - ID3_Frame* frame = NULL; - if (NULL != tag && NULL != text && strlen(text) > 0) -@@ -287,7 +287,7 @@ - return sYear; - } - --ID3_Frame* ID3_AddYear(ID3_Tag *tag, const char *text, bool replace) -+ID3_Frame* ID3_AddYear(ID3_Tag *tag, const char *text, my_bool replace) - { - ID3_Frame* frame = NULL; - if (NULL != tag && NULL != text && strlen(text) > 0) -@@ -355,19 +355,19 @@ - return comment; - } - --ID3_Frame* ID3_AddComment(ID3_Tag *tag, const char *text, bool replace) -+ID3_Frame* ID3_AddComment(ID3_Tag *tag, const char *text, my_bool replace) - { - return ID3_AddComment(tag, text, "", replace); - } - - ID3_Frame* ID3_AddComment(ID3_Tag *tag, const char *text, -- const char *desc, bool replace) -+ const char *desc, my_bool replace) - { - return ID3_AddComment(tag, text, desc, "XXX", replace); - } - - ID3_Frame* ID3_AddComment(ID3_Tag *tag, const char *text, -- const char *desc, const char* lang, bool replace) -+ const char *desc, const char* lang, my_bool replace) - { - ID3_Frame* frame = NULL; - if (NULL != tag && -@@ -375,7 +375,7 @@ - NULL != desc && - strlen(text) > 0) - { -- bool bAdd = true; -+ my_bool bAdd = true; - if (replace) - { - ID3_RemoveComments(tag, desc); -@@ -435,7 +435,7 @@ - { - if (frame->GetID() == ID3FID_COMMENT) - { -- bool remove = false; -+ my_bool remove = false; - // A null description means remove all comments - if (NULL == desc) - { -@@ -490,7 +490,7 @@ - return nTrack; - } - --ID3_Frame* ID3_AddTrack(ID3_Tag *tag, uchar trk, uchar ttl, bool replace) -+ID3_Frame* ID3_AddTrack(ID3_Tag *tag, uchar trk, uchar ttl, my_bool replace) - { - ID3_Frame* frame = NULL; - if (NULL != tag && trk > 0) -@@ -567,7 +567,7 @@ - } - - //following routine courtesy of John George --bool ID3_HasPicture(const ID3_Tag* tag) -+my_bool ID3_HasPicture(const ID3_Tag* tag) - { - if (NULL == tag) - return false; -@@ -587,7 +587,7 @@ - } - - //following routine courtesy of John George --ID3_Frame* ID3_AddPicture(ID3_Tag* tag, const char* TempPicPath, const char* MimeType, bool replace) -+ID3_Frame* ID3_AddPicture(ID3_Tag* tag, const char* TempPicPath, const char* MimeType, my_bool replace) - { - ID3_Frame* frame = NULL; - if (NULL != tag ) -@@ -657,7 +657,7 @@ - } - - //following routine courtesy of John George --ID3_Frame* ID3_AddPicture(ID3_Tag *tag, const char *TempPicPath, const char *MimeType, ID3_PictureType pictype, const char* Description, bool replace) -+ID3_Frame* ID3_AddPicture(ID3_Tag *tag, const char *TempPicPath, const char *MimeType, ID3_PictureType pictype, const char* Description, my_bool replace) - { - ID3_Frame* frame = NULL; - if (NULL != tag ) -@@ -836,7 +836,7 @@ - } - - //following routine courtesy of John George --ID3_Frame* ID3_AddGenre(ID3_Tag* tag, const char* genre, bool replace) -+ID3_Frame* ID3_AddGenre(ID3_Tag* tag, const char* genre, my_bool replace) - { - ID3_Frame* frame = NULL; - if (NULL != tag && NULL != genre && strlen(genre) > 0) -@@ -859,7 +859,7 @@ - return frame; - } - --ID3_Frame* ID3_AddGenre(ID3_Tag *tag, size_t genreNum, bool replace) -+ID3_Frame* ID3_AddGenre(ID3_Tag *tag, size_t genreNum, my_bool replace) - { - if(0xFF != genreNum) - { -@@ -909,19 +909,19 @@ - return sLyrics; - } - --ID3_Frame* ID3_AddLyrics(ID3_Tag *tag, const char *text, bool replace) -+ID3_Frame* ID3_AddLyrics(ID3_Tag *tag, const char *text, my_bool replace) - { - return ID3_AddLyrics(tag, text, "", replace); - } - - ID3_Frame* ID3_AddLyrics(ID3_Tag *tag, const char *text, const char* desc, -- bool replace) -+ my_bool replace) - { - return ID3_AddLyrics(tag, text, desc, "XXX", replace); - } - - ID3_Frame* ID3_AddLyrics(ID3_Tag *tag, const char *text, const char* desc, -- const char* lang, bool replace) -+ const char* lang, my_bool replace) - { - ID3_Frame* frame = NULL; - if (NULL != tag && strlen(text) > 0) -@@ -982,7 +982,7 @@ - return sLyricist; - } - --ID3_Frame* ID3_AddLyricist(ID3_Tag *tag, const char *text, bool replace) -+ID3_Frame* ID3_AddLyricist(ID3_Tag *tag, const char *text, my_bool replace) - { - ID3_Frame* frame = NULL; - if (NULL != tag && NULL != text && strlen(text) > 0) -@@ -1026,21 +1026,21 @@ - } - - ID3_Frame* ID3_AddSyncLyrics(ID3_Tag *tag, const uchar *data, size_t datasize, -- ID3_TimeStampFormat format, bool replace) -+ ID3_TimeStampFormat format, my_bool replace) - { - return ID3_AddSyncLyrics(tag, data, datasize, format, "", replace); - } - - ID3_Frame* ID3_AddSyncLyrics(ID3_Tag *tag, const uchar *data, size_t datasize, - ID3_TimeStampFormat format, const char *desc, -- bool replace) -+ my_bool replace) - { - return ID3_AddSyncLyrics(tag, data, datasize, format, desc, "XXX", replace); - } - - ID3_Frame* ID3_AddSyncLyrics(ID3_Tag *tag, const uchar *data, size_t datasize, - ID3_TimeStampFormat format, const char *desc, -- const char *lang, bool replace) -+ const char *lang, my_bool replace) - { - return ID3_AddSyncLyrics(tag, data, datasize, format, desc, lang, - ID3CT_LYRICS, replace); -@@ -1049,7 +1049,7 @@ - ID3_Frame* ID3_AddSyncLyrics(ID3_Tag *tag, const uchar *data, size_t datasize, - ID3_TimeStampFormat format, const char *desc, - const char *lang, ID3_ContentType type, -- bool replace) -+ my_bool replace) - { - ID3_Frame* frame = NULL; - // language and descriptor should be mandatory -diff '--color=auto' -uNr a/src/mp3_header.h b/src/mp3_header.h ---- a/src/mp3_header.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/mp3_header.h 2025-01-30 14:01:53.590000827 -0000 -@@ -38,7 +38,7 @@ - void Clean(); - - const Mp3_Headerinfo* GetMp3HeaderInfo() const { return _mp3_header_output; }; -- bool Parse(ID3_Reader&, size_t mp3size); -+ my_bool Parse(ID3_Reader&, size_t mp3size); - - Mpeg_Layers Layer() const { return _mp3_header_output->layer; }; - Mpeg_Version Version() const { return _mp3_header_output->version; }; -@@ -51,9 +51,9 @@ - uint32 Frequency() const { return _mp3_header_output->frequency; }; - uint32 Framesize() const { return _mp3_header_output->framesize; }; - uint32 Frames() const { return _mp3_header_output->frames; }; -- bool Private() const { return _mp3_header_output->privatebit; }; -- bool Copyrighted() const { return _mp3_header_output->copyrighted; }; -- bool Original() const { return _mp3_header_output->original; }; -+ my_bool Private() const { return _mp3_header_output->privatebit; }; -+ my_bool Copyrighted() const { return _mp3_header_output->copyrighted; }; -+ my_bool Original() const { return _mp3_header_output->original; }; - uint32 Seconds() const { return _mp3_header_output->time; }; - - private: -diff '--color=auto' -uNr a/src/mp3_parse.cpp b/src/mp3_parse.cpp ---- a/src/mp3_parse.cpp 2025-01-30 14:02:28.893443772 -0000 -+++ b/src/mp3_parse.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -99,7 +99,7 @@ - - using namespace dami; - --bool Mp3Info::Parse(ID3_Reader& reader, size_t mp3size) -+my_bool Mp3Info::Parse(ID3_Reader& reader, size_t mp3size) - { - MP3_BitRates _mp3_bitrates[2][3][16] = - { -@@ -319,10 +319,10 @@ - return false; - } - -- _mp3_header_output->privatebit = (bool)_tmpheader->private_bit; -- _mp3_header_output->copyrighted = (bool)_tmpheader->copyright; -- _mp3_header_output->original = (bool)_tmpheader->original; -- _mp3_header_output->crc = (Mp3_Crc)!(bool)_tmpheader->protection_bit; -+ _mp3_header_output->privatebit = (my_bool)_tmpheader->private_bit; -+ _mp3_header_output->copyrighted = (my_bool)_tmpheader->copyright; -+ _mp3_header_output->original = (my_bool)_tmpheader->original; -+ _mp3_header_output->crc = (Mp3_Crc)!(my_bool)_tmpheader->protection_bit; - - switch (_tmpheader->mode) - { -diff '--color=auto' -uNr a/src/tag.cpp b/src/tag.cpp ---- a/src/tag.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/tag.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -340,7 +340,7 @@ - ** - ** \return Whether or not the tag has been altered. - **/ --bool ID3_Tag::HasChanged() const -+my_bool ID3_Tag::HasChanged() const - { - return _impl->HasChanged(); - } -@@ -397,14 +397,14 @@ - ** - ** \param bSync Whether the tag should be unsynchronized - **/ --bool ID3_Tag::SetUnsync(bool b) -+my_bool ID3_Tag::SetUnsync(my_bool b) - { - return _impl->SetUnsync(b); - } - - - /** Turns extended header rendering on or off, dependant on the value of the -- ** boolean parameter. -+ ** my_boolean parameter. - ** - ** This option is currently ignored as id3lib doesn't yet create extended - ** headers. This option only applies when rendering tags for ID3v2 versions -@@ -416,7 +416,7 @@ - ** - ** \param bExt Whether to render an extended header - **/ --bool ID3_Tag::SetExtendedHeader(bool ext) -+my_bool ID3_Tag::SetExtendedHeader(my_bool ext) - { - return _impl->SetExtended(ext); - } -@@ -450,27 +450,27 @@ - ** - ** \param bPad Whether or not render the tag with padding. - **/ --bool ID3_Tag::SetPadding(bool pad) -+my_bool ID3_Tag::SetPadding(my_bool pad) - { - return _impl->SetPadding(pad); - } - --bool ID3_Tag::SetExperimental(bool exp) -+my_bool ID3_Tag::SetExperimental(my_bool exp) - { - return _impl->SetExperimental(exp); - } - --bool ID3_Tag::GetUnsync() const -+my_bool ID3_Tag::GetUnsync() const - { - return _impl->GetUnsync(); - } - --bool ID3_Tag::GetExtendedHeader() const -+my_bool ID3_Tag::GetExtendedHeader() const - { - return _impl->GetExtended(); - } - --bool ID3_Tag::GetExperimental() const -+my_bool ID3_Tag::GetExperimental() const - { - return _impl->GetExperimental(); - } -@@ -518,7 +518,7 @@ - ** - ** \param frame A pointer to the frame that is being added to the tag. - **/ --bool ID3_Tag::AttachFrame(ID3_Frame *frame) -+my_bool ID3_Tag::AttachFrame(ID3_Frame *frame) - { - return _impl->AttachFrame(frame); - } -@@ -549,7 +549,7 @@ - return _impl->RemoveFrame(frame); - } - --bool ID3_Tag::Parse(ID3_Reader& reader) -+my_bool ID3_Tag::Parse(ID3_Reader& reader) - { - return id3::v2::parse(*_impl, reader); - } -@@ -933,7 +933,7 @@ - return *this; - } - --bool ID3_Tag::HasTagType(ID3_TagType tt) const -+my_bool ID3_Tag::HasTagType(ID3_TagType tt) const - { - return _impl->HasTagType(tt); - } -@@ -943,7 +943,7 @@ - return _impl->GetSpec(); - } - --bool ID3_Tag::SetSpec(ID3_V2Spec spec) -+my_bool ID3_Tag::SetSpec(ID3_V2Spec spec) - { - return _impl->SetSpec(spec); - } -@@ -993,25 +993,25 @@ - } - } - --size_t ID3_Tag::Link(const char *fileInfo, bool parseID3v1, bool parseLyrics3) -+size_t ID3_Tag::Link(const char *fileInfo, my_bool parseID3v1, my_bool parseLyrics3) - { - return _impl->Link(fileInfo, parseID3v1, parseLyrics3); - } - --void ID3_Tag::SetCompression(bool b) -+void ID3_Tag::SetCompression(my_bool b) - { - ; - } - --bool ID3_Tag::HasLyrics() const -+my_bool ID3_Tag::HasLyrics() const - { - return this->HasTagType(ID3TT_LYRICS); - } --bool ID3_Tag::HasV2Tag() const -+my_bool ID3_Tag::HasV2Tag() const - { - return this->HasTagType(ID3TT_ID3V2); - } --bool ID3_Tag::HasV1Tag() const -+my_bool ID3_Tag::HasV1Tag() const - { - return this->HasTagType(ID3TT_ID3V1); - } -diff '--color=auto' -uNr a/src/tag_file.cpp b/src/tag_file.cpp ---- a/src/tag_file.cpp 2025-01-30 14:02:28.881443961 -0000 -+++ b/src/tag_file.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -114,7 +114,7 @@ - - #endif - --size_t ID3_TagImpl::Link(const char *fileInfo, bool parseID3v1, bool parseLyrics3) -+size_t ID3_TagImpl::Link(const char *fileInfo, my_bool parseID3v1, my_bool parseLyrics3) - { - flags_t tt = ID3TT_NONE; - if (parseID3v1) -diff '--color=auto' -uNr a/src/tag_impl.cpp b/src/tag_impl.cpp ---- a/src/tag_impl.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/tag_impl.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -164,7 +164,7 @@ - } - } - --bool ID3_TagImpl::AttachFrame(ID3_Frame *frame) -+my_bool ID3_TagImpl::AttachFrame(ID3_Frame *frame) - { - - if (NULL == frame) -@@ -199,9 +199,9 @@ - } - - --bool ID3_TagImpl::HasChanged() const -+my_bool ID3_TagImpl::HasChanged() const - { -- bool changed = _changed; -+ my_bool changed = _changed; - - if (! changed) - { -@@ -222,9 +222,9 @@ - return changed; - } - --bool ID3_TagImpl::SetSpec(ID3_V2Spec spec) -+my_bool ID3_TagImpl::SetSpec(ID3_V2Spec spec) - { -- bool changed = _hdr.SetSpec(spec); -+ my_bool changed = _hdr.SetSpec(spec); - _changed = _changed || changed; - return changed; - } -@@ -234,43 +234,43 @@ - return _hdr.GetSpec(); - } - --bool ID3_TagImpl::SetUnsync(bool b) -+my_bool ID3_TagImpl::SetUnsync(my_bool b) - { -- bool changed = _hdr.SetUnsync(b); -+ my_bool changed = _hdr.SetUnsync(b); - _changed = changed || _changed; - return changed; - } - --bool ID3_TagImpl::SetExtended(bool ext) -+my_bool ID3_TagImpl::SetExtended(my_bool ext) - { -- bool changed = _hdr.SetExtended(ext); -+ my_bool changed = _hdr.SetExtended(ext); - _changed = changed || _changed; - return changed; - } - --bool ID3_TagImpl::SetExperimental(bool exp) -+my_bool ID3_TagImpl::SetExperimental(my_bool exp) - { -- bool changed = _hdr.SetExperimental(exp); -+ my_bool changed = _hdr.SetExperimental(exp); - _changed = changed || _changed; - return changed; - } - --bool ID3_TagImpl::GetUnsync() const -+my_bool ID3_TagImpl::GetUnsync() const - { - return _hdr.GetUnsync(); - } - --bool ID3_TagImpl::GetExtended() const -+my_bool ID3_TagImpl::GetExtended() const - { - return _hdr.GetExtended(); - } - --bool ID3_TagImpl::GetExperimental() const -+my_bool ID3_TagImpl::GetExperimental() const - { - return _hdr.GetExperimental(); - } - --bool ID3_TagImpl::GetFooter() const -+my_bool ID3_TagImpl::GetFooter() const - { - return _hdr.GetFooter(); - } -@@ -288,9 +288,9 @@ - return 0;; - } - --bool ID3_TagImpl::SetPadding(bool pad) -+my_bool ID3_TagImpl::SetPadding(my_bool pad) - { -- bool changed = (_is_padded != pad); -+ my_bool changed = (_is_padded != pad); - _changed = changed || _changed; - if (changed) - { -diff '--color=auto' -uNr a/src/tag_impl.h b/src/tag_impl.h ---- a/src/tag_impl.h 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/tag_impl.h 2025-01-30 14:01:53.590000827 -0000 -@@ -44,12 +44,12 @@ - { - namespace v1 - { -- bool parse(ID3_TagImpl&, ID3_Reader&); -+ my_bool parse(ID3_TagImpl&, ID3_Reader&); - void render(ID3_Writer&, const ID3_TagImpl&); - }; - namespace v2 - { -- bool parse(ID3_TagImpl& tag, ID3_Reader& rdr); -+ my_bool parse(ID3_TagImpl& tag, ID3_Reader& rdr); - void render(ID3_Writer& writer, const ID3_TagImpl& tag); - }; - }; -@@ -57,16 +57,16 @@ - { - namespace v1 - { -- bool parse(ID3_TagImpl&, ID3_Reader&); -+ my_bool parse(ID3_TagImpl&, ID3_Reader&); - }; - namespace v2 - { -- bool parse(ID3_TagImpl&, ID3_Reader&); -+ my_bool parse(ID3_TagImpl&, ID3_Reader&); - }; - }; - namespace mm - { -- bool parse(ID3_TagImpl&, ID3_Reader&); -+ my_bool parse(ID3_TagImpl&, ID3_Reader&); - }; - }; - -@@ -82,25 +82,25 @@ - virtual ~ID3_TagImpl(); - - void Clear(); -- bool HasChanged() const; -- void SetChanged(bool b) { _changed = b; } -+ my_bool HasChanged() const; -+ void SetChanged(my_bool b) { _changed = b; } - size_t Size() const; - -- bool SetUnsync(bool); -- bool SetExtended(bool); -- bool SetExperimental(bool); -- bool SetPadding(bool); -- -- bool GetUnsync() const; -- bool GetExtended() const; -- bool GetExperimental() const; -- bool GetFooter() const; -+ my_bool SetUnsync(my_bool); -+ my_bool SetExtended(my_bool); -+ my_bool SetExperimental(my_bool); -+ my_bool SetPadding(my_bool); -+ -+ my_bool GetUnsync() const; -+ my_bool GetExtended() const; -+ my_bool GetExperimental() const; -+ my_bool GetFooter() const; - - size_t GetExtendedBytes() const; - - void AddFrame(const ID3_Frame&); - void AddFrame(const ID3_Frame*); -- bool AttachFrame(ID3_Frame*); -+ my_bool AttachFrame(ID3_Frame*); - ID3_Frame* RemoveFrame(const ID3_Frame *); - - size_t Link(const char *fileInfo, flags_t = (flags_t) ID3TT_ALL); -@@ -121,9 +121,9 @@ - size_t NumFrames() const { return _frames.size(); } - ID3_TagImpl& operator=( const ID3_Tag & ); - -- bool HasTagType(ID3_TagType tt) const { return _file_tags.test(tt); } -+ my_bool HasTagType(ID3_TagType tt) const { return _file_tags.test(tt); } - ID3_V2Spec GetSpec() const; -- bool SetSpec(ID3_V2Spec); -+ my_bool SetSpec(ID3_V2Spec); - - static size_t IsV2Tag(ID3_Reader&); - -@@ -136,12 +136,12 @@ - - /* Deprecated! */ - void AddNewFrame(ID3_Frame* f) { this->AttachFrame(f); } -- size_t Link(const char *fileInfo, bool parseID3v1, bool parseLyrics3); -- void SetCompression(bool) { ; } -+ size_t Link(const char *fileInfo, my_bool parseID3v1, my_bool parseLyrics3); -+ void SetCompression(my_bool) { ; } - void AddFrames(const ID3_Frame *, size_t); -- bool HasLyrics() const { return this->HasTagType(ID3TT_LYRICS); } -- bool HasV2Tag() const { return this->HasTagType(ID3TT_ID3V2); } -- bool HasV1Tag() const { return this->HasTagType(ID3TT_ID3V1); } -+ my_bool HasLyrics() const { return this->HasTagType(ID3TT_LYRICS); } -+ my_bool HasV2Tag() const { return this->HasTagType(ID3TT_ID3V2); } -+ my_bool HasV1Tag() const { return this->HasTagType(ID3TT_ID3V1); } - size_t PaddingSize(size_t) const; - - protected: -@@ -155,19 +155,19 @@ - - private: - ID3_TagHeader _hdr; // information relevant to the tag header -- bool _is_padded; // add padding to tags? -+ my_bool _is_padded; // add padding to tags? - - Frames _frames; - - mutable const_iterator _cursor; // which frame in list are we at -- mutable bool _changed; // has tag changed since last parse or render? -+ mutable my_bool _changed; // has tag changed since last parse or render? - - // file-related member variables - dami::String _file_name; // name of the file we are linked to - size_t _file_size; // the size of the file (without any tag(s)) - size_t _prepended_bytes; // number of tag bytes at start of file - size_t _appended_bytes; // number of tag bytes at end of file -- bool _is_file_writable;// is the associated file (via Link) writable? -+ my_bool _is_file_writable;// is the associated file (via Link) writable? - ID3_Flags _tags_to_parse; // which tag types should attempt to be parsed - ID3_Flags _file_tags; // which tag types does the file contain - Mp3Info *_mp3_info; // class used to retrieve _mp3_header -diff '--color=auto' -uNr a/src/tag_parse.cpp b/src/tag_parse.cpp ---- a/src/tag_parse.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/tag_parse.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -41,7 +41,7 @@ - - namespace - { -- bool parseFrames(ID3_TagImpl& tag, ID3_Reader& rdr) -+ my_bool parseFrames(ID3_TagImpl& tag, ID3_Reader& rdr) - { - ID3_Reader::pos_type beg = rdr.getCur(); - io::ExitTrigger et(rdr, beg); -@@ -56,7 +56,7 @@ - last_pos = rdr.getCur(); - ID3_Frame* f = new ID3_Frame; - f->SetSpec(tag.GetSpec()); -- bool goodParse = f->Parse(rdr); -+ my_bool goodParse = f->Parse(rdr); - frameSize = rdr.getCur() - last_pos; - ID3D_NOTICE( "id3::v2::parseFrames(): frameSize = " << frameSize ); - totalSize += frameSize; -@@ -134,7 +134,7 @@ - } - }; - --bool id3::v2::parse(ID3_TagImpl& tag, ID3_Reader& reader) -+my_bool id3::v2::parse(ID3_TagImpl& tag, ID3_Reader& reader) - { - ID3_Reader::pos_type beg = reader.getCur(); - io::ExitTrigger et(reader); -diff '--color=auto' -uNr a/src/tag_parse_lyrics3.cpp b/src/tag_parse_lyrics3.cpp ---- a/src/tag_parse_lyrics3.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/tag_parse_lyrics3.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -52,14 +52,14 @@ - return readIntegerString(reader, reader.remainingBytes()); - } - -- bool isTimeStamp(ID3_Reader& reader) -+ my_bool isTimeStamp(ID3_Reader& reader) - { - ID3_Reader::pos_type cur = reader.getCur(); - if (reader.getEnd() < cur + 7) - { - return false; - } -- bool its = ('[' == reader.readChar() && -+ my_bool its = ('[' == reader.readChar() && - isdigit(reader.readChar()) && isdigit(reader.readChar()) && - ':' == reader.readChar() && - isdigit(reader.readChar()) && isdigit(reader.readChar()) && -@@ -83,7 +83,7 @@ - return sec * 1000; - } - -- bool findText(ID3_Reader& reader, String text) -+ my_bool findText(ID3_Reader& reader, String text) - { - if (text.empty()) - { -@@ -121,7 +121,7 @@ - { - while (!reader.atEnd()) - { -- bool lf = false; -+ my_bool lf = false; - size_t ms = 0; - size_t count = 0; - while (isTimeStamp(reader)) -@@ -168,7 +168,7 @@ - } - }; - --bool lyr3::v1::parse(ID3_TagImpl& tag, ID3_Reader& reader) -+my_bool lyr3::v1::parse(ID3_TagImpl& tag, ID3_Reader& reader) - { - io::ExitTrigger et(reader); - ID3_Reader::pos_type end = reader.getCur(); -@@ -218,8 +218,8 @@ - return true; - } - --//bool parse(TagImpl& tag, ID3_Reader& reader) --bool lyr3::v2::parse(ID3_TagImpl& tag, ID3_Reader& reader) -+//my_bool parse(TagImpl& tag, ID3_Reader& reader) -+my_bool lyr3::v2::parse(ID3_TagImpl& tag, ID3_Reader& reader) - { - io::ExitTrigger et(reader); - ID3_Reader::pos_type end = reader.getCur(); -@@ -266,7 +266,7 @@ - return false; - } - -- bool has_time_stamps = false; -+ my_bool has_time_stamps = false; - - ID3_Frame* lyr_frame = NULL; - -diff '--color=auto' -uNr a/src/tag_parse_musicmatch.cpp b/src/tag_parse_musicmatch.cpp ---- a/src/tag_parse_musicmatch.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/tag_parse_musicmatch.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -112,7 +112,7 @@ - } - }; - --bool mm::parse(ID3_TagImpl& tag, ID3_Reader& rdr) -+my_bool mm::parse(ID3_TagImpl& tag, ID3_Reader& rdr) - { - io::ExitTrigger et(rdr); - ID3_Reader::pos_type end = rdr.getCur(); -diff '--color=auto' -uNr a/src/tag_parse_v1.cpp b/src/tag_parse_v1.cpp ---- a/src/tag_parse_v1.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/tag_parse_v1.cpp 2025-01-30 14:01:53.598000700 -0000 -@@ -32,7 +32,7 @@ - - using namespace dami; - --bool id3::v1::parse(ID3_TagImpl& tag, ID3_Reader& reader) -+my_bool id3::v1::parse(ID3_TagImpl& tag, ID3_Reader& reader) - { - io::ExitTrigger et(reader); - -diff '--color=auto' -uNr a/src/utils.cpp b/src/utils.cpp ---- a/src/utils.cpp 2003-03-02 00:23:00.000000000 -0000 -+++ b/src/utils.cpp 2025-01-30 14:01:53.590000827 -0000 -@@ -230,7 +230,7 @@ - - namespace - { -- bool exists(String name) -+ my_bool exists(String name) - { - ifstream file(name.c_str(), NOCREATE); - return file.is_open() != 0; -diff '--color=auto' -uNr a/include/id3/id3lib_strings.h b/include/id3/id3lib_strings.h ---- a/include/id3/id3lib_strings.h 2025-01-30 14:28:46.548624168 -0000 -+++ b/include/id3/id3lib_strings.h 2025-01-30 14:30:12.883263552 -0000 -@@ -31,6 +31,7 @@ - - #include <string> - #include <cstring> -+#include "id3/globals.h" //has my_bool - - #if (defined(__GNUC__) && (__GNUC__ >= 3) || (defined(_MSC_VER) && _MSC_VER > 1000)) - namespace std +-- +2.48.1 +
