Warning, /multimedia/kid3/packaging/patches/id3lib-3.8.3-60-add-c-wrapper-functions.patch is written in an unsupported language. File is not indexed.
0001 This patch adds C wrapper functions for field encoding. 0002 0003 It was first introduced in version 3.8.3-8 and fixes 0004 http://bugs.debian.org/281292 0005 --- a/include/id3.h 0006 +++ b/include/id3.h 0007 @@ -104,6 +104,9 @@ 0008 ID3_C_EXPORT void CCONV ID3Field_GetBINARY (const ID3Field *field, uchar *buffer, size_t buffLength); 0009 ID3_C_EXPORT void CCONV ID3Field_FromFile (ID3Field *field, const char *fileName); 0010 ID3_C_EXPORT void CCONV ID3Field_ToFile (const ID3Field *field, const char *fileName); 0011 + ID3_C_EXPORT bool CCONV ID3Field_SetEncoding (ID3Field *field, ID3_TextEnc enc); 0012 + ID3_C_EXPORT ID3_TextEnc CCONV ID3Field_GetEncoding (const ID3Field *field); 0013 + ID3_C_EXPORT bool CCONV ID3Field_IsEncodable (const ID3Field *field); 0014 0015 /* field-info wrappers */ 0016 ID3_C_EXPORT char* CCONV ID3FrameInfo_ShortName (ID3_FrameID frameid); 0017 --- a/src/c_wrapper.cpp 0018 +++ b/src/c_wrapper.cpp 0019 @@ -681,6 +681,39 @@ 0020 } 0021 } 0022 0023 + ID3_C_EXPORT bool CCONV 0024 + ID3Field_SetEncoding(ID3Field *field, ID3_TextEnc enc) 0025 + { 0026 + bool changed = false; 0027 + if (field) 0028 + { 0029 + ID3_CATCH(changed = reinterpret_cast<ID3_Field *>(field)->SetEncoding(enc)); 0030 + } 0031 + return changed; 0032 + } 0033 + 0034 + ID3_C_EXPORT ID3_TextEnc CCONV 0035 + ID3Field_GetEncoding(const ID3Field *field) 0036 + { 0037 + ID3_TextEnc enc = ID3TE_NONE; 0038 + if (field) 0039 + { 0040 + ID3_CATCH(enc = reinterpret_cast<const ID3_Field *>(field)->GetEncoding()); 0041 + } 0042 + return enc; 0043 + } 0044 + 0045 + ID3_C_EXPORT bool CCONV 0046 + ID3Field_IsEncodable(const ID3Field *field) 0047 + { 0048 + bool isEncodable = false; 0049 + if (field) 0050 + { 0051 + ID3_CATCH(isEncodable = reinterpret_cast<const ID3_Field *>(field)->IsEncodable()); 0052 + } 0053 + return isEncodable; 0054 + } 0055 + 0056 #ifdef __cplusplus 0057 } 0058 #endif /* __cplusplus */