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 */