projects
/
platform
/
core
/
uifw
/
dali-toolkit.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
DALi Version 1.2.12
[platform/core/uifw/dali-toolkit.git]
/
dali-toolkit
/
internal
/
text
/
character-set-conversion.cpp
diff --git
a/dali-toolkit/internal/text/character-set-conversion.cpp
b/dali-toolkit/internal/text/character-set-conversion.cpp
index
b1b9993
..
bd72dc1
100644
(file)
--- a/
dali-toolkit/internal/text/character-set-conversion.cpp
+++ b/
dali-toolkit/internal/text/character-set-conversion.cpp
@@
-24,6
+24,9
@@
namespace Dali
namespace Toolkit
{
namespace Toolkit
{
+namespace Text
+{
+
namespace
{
const static uint8_t U1 = 1u;
namespace
{
const static uint8_t U1 = 1u;
@@
-66,8
+69,16
@@
namespace
U0, U0, U0, U0, // Non valid.
U0, U0, U0, U0, // Non valid.
};
U0, U0, U0, U0, // Non valid.
U0, U0, U0, U0, // Non valid.
};
+
+ const uint8_t CR = 0xd;
+ const uint8_t LF = 0xa;
} // namespace
} // namespace
+uint8_t GetUtf8Length( uint8_t utf8LeadByte )
+{
+ return UTF8_LENGTH[utf8LeadByte];
+}
+
uint32_t GetNumberOfUtf8Characters( const uint8_t* const utf8, uint32_t length )
{
uint32_t numberOfCharacters = 0u;
uint32_t GetNumberOfUtf8Characters( const uint8_t* const utf8, uint32_t length )
{
uint32_t numberOfCharacters = 0u;
@@
-127,8
+138,26
@@
uint32_t Utf8ToUtf32( const uint8_t* const utf8, uint32_t length, uint32_t* utf3
{
case U1:
{
{
case U1:
{
- *utf32++ = leadByte;
- begin++;
+ if( CR == leadByte )
+ {
+ // Replace CR+LF or CR by LF
+ *utf32++ = LF;
+
+ // Look ahead if the next one is a LF.
+ ++begin;
+ if( begin < end )
+ {
+ if( LF == *begin )
+ {
+ ++begin;
+ }
+ }
+ }
+ else
+ {
+ *utf32++ = leadByte;
+ begin++;
+ }
break;
}
break;
}
@@
-222,6
+251,8
@@
void Utf32ToUtf8( const uint32_t* const utf32, uint32_t numberOfCharacters, std:
Utf32ToUtf8( utf32, numberOfCharacters, reinterpret_cast<uint8_t*>(&utf8[0]) );
}
Utf32ToUtf8( utf32, numberOfCharacters, reinterpret_cast<uint8_t*>(&utf8[0]) );
}
+} // namespace Text
+
} // namespace Toolkit
} // namespace Dali
} // namespace Toolkit
} // namespace Dali