mirror of
git://slackware.nl/current.git
synced 2024-12-31 10:28:29 +01:00
59 lines
1.9 KiB
Diff
59 lines
1.9 KiB
Diff
|
This patch adds C wrapper functions for field encoding.
|
||
|
|
||
|
It was first introduced in version 3.8.3-8 and fixes
|
||
|
http://bugs.debian.org/281292
|
||
|
--- a/include/id3.h
|
||
|
+++ b/include/id3.h
|
||
|
@@ -104,6 +104,9 @@
|
||
|
ID3_C_EXPORT void CCONV ID3Field_GetBINARY (const ID3Field *field, uchar *buffer, size_t buffLength);
|
||
|
ID3_C_EXPORT void CCONV ID3Field_FromFile (ID3Field *field, const char *fileName);
|
||
|
ID3_C_EXPORT void CCONV ID3Field_ToFile (const ID3Field *field, const char *fileName);
|
||
|
+ ID3_C_EXPORT bool CCONV ID3Field_SetEncoding (ID3Field *field, ID3_TextEnc enc);
|
||
|
+ ID3_C_EXPORT ID3_TextEnc CCONV ID3Field_GetEncoding (const ID3Field *field);
|
||
|
+ ID3_C_EXPORT bool CCONV ID3Field_IsEncodable (const ID3Field *field);
|
||
|
|
||
|
/* field-info wrappers */
|
||
|
ID3_C_EXPORT char* CCONV ID3FrameInfo_ShortName (ID3_FrameID frameid);
|
||
|
--- a/src/c_wrapper.cpp
|
||
|
+++ b/src/c_wrapper.cpp
|
||
|
@@ -681,6 +681,39 @@
|
||
|
}
|
||
|
}
|
||
|
|
||
|
+ ID3_C_EXPORT bool CCONV
|
||
|
+ ID3Field_SetEncoding(ID3Field *field, ID3_TextEnc enc)
|
||
|
+ {
|
||
|
+ bool changed = false;
|
||
|
+ if (field)
|
||
|
+ {
|
||
|
+ ID3_CATCH(changed = reinterpret_cast<ID3_Field *>(field)->SetEncoding(enc));
|
||
|
+ }
|
||
|
+ return changed;
|
||
|
+ }
|
||
|
+
|
||
|
+ ID3_C_EXPORT ID3_TextEnc CCONV
|
||
|
+ ID3Field_GetEncoding(const ID3Field *field)
|
||
|
+ {
|
||
|
+ ID3_TextEnc enc = ID3TE_NONE;
|
||
|
+ if (field)
|
||
|
+ {
|
||
|
+ ID3_CATCH(enc = reinterpret_cast<const ID3_Field *>(field)->GetEncoding());
|
||
|
+ }
|
||
|
+ return enc;
|
||
|
+ }
|
||
|
+
|
||
|
+ ID3_C_EXPORT bool CCONV
|
||
|
+ ID3Field_IsEncodable(const ID3Field *field)
|
||
|
+ {
|
||
|
+ bool isEncodable = false;
|
||
|
+ if (field)
|
||
|
+ {
|
||
|
+ ID3_CATCH(isEncodable = reinterpret_cast<const ID3_Field *>(field)->IsEncodable());
|
||
|
+ }
|
||
|
+ return isEncodable;
|
||
|
+ }
|
||
|
+
|
||
|
#ifdef __cplusplus
|
||
|
}
|
||
|
#endif /* __cplusplus */
|