mirror of
https://github.com/VDR4Arch/vdr.git
synced 2023-10-10 13:36:52 +02:00
Fixed handling 3 and 4 byte UTF-8 symbols in Utf8CharGet()
This commit is contained in:
parent
4d6f0fb4c4
commit
ff04bc72fd
@ -957,6 +957,7 @@ Andreas Mair <andreas@vdr-developer.org>
|
|||||||
not NULL
|
not NULL
|
||||||
for making the SVDRP command LSTC list the channels with group separators if the
|
for making the SVDRP command LSTC list the channels with group separators if the
|
||||||
option ':groups' is given
|
option ':groups' is given
|
||||||
|
for fixing handling 3 and 4 byte UTF-8 symbols in Utf8CharGet()
|
||||||
|
|
||||||
Olivier Jacques <jacquesolivier@hotmail.com>)
|
Olivier Jacques <jacquesolivier@hotmail.com>)
|
||||||
for translating OSD texts to the French language
|
for translating OSD texts to the French language
|
||||||
|
4
HISTORY
4
HISTORY
@ -5671,7 +5671,7 @@ Video Disk Recorder Revision History
|
|||||||
- Added the backslash ('\') to the list of characters that need to be escaped
|
- Added the backslash ('\') to the list of characters that need to be escaped
|
||||||
when executing external commands (thanks to Peter Bieringer for reporting this one).
|
when executing external commands (thanks to Peter Bieringer for reporting this one).
|
||||||
|
|
||||||
2008-02-27: Version 1.5.17
|
2008-02-29: Version 1.5.17
|
||||||
|
|
||||||
- Updated the Swedish OSD texts (thanks to Tomas Berglund).
|
- Updated the Swedish OSD texts (thanks to Tomas Berglund).
|
||||||
- Made the 'pic2mpg' script of the 'pictures' plugin work with uppercase filename
|
- Made the 'pic2mpg' script of the 'pictures' plugin work with uppercase filename
|
||||||
@ -5680,3 +5680,5 @@ Video Disk Recorder Revision History
|
|||||||
- Updated the Dutch OSD texts (thanks to Johan Schuring).
|
- Updated the Dutch OSD texts (thanks to Johan Schuring).
|
||||||
- Stripping control codes 0x86 and 0x87 from SI strings.
|
- Stripping control codes 0x86 and 0x87 from SI strings.
|
||||||
- Updated French language texts (thanks to Jean-Claude Repetto).
|
- Updated French language texts (thanks to Jean-Claude Repetto).
|
||||||
|
- Fixed handling 3 and 4 byte UTF-8 symbols in Utf8CharGet() (thanks to Andreas
|
||||||
|
Mair).
|
||||||
|
8
tools.c
8
tools.c
@ -4,7 +4,7 @@
|
|||||||
* See the main source file 'vdr.c' for copyright information and
|
* See the main source file 'vdr.c' for copyright information and
|
||||||
* how to reach the author.
|
* how to reach the author.
|
||||||
*
|
*
|
||||||
* $Id: tools.c 1.143 2008/02/16 13:38:22 kls Exp $
|
* $Id: tools.c 1.144 2008/02/29 13:16:39 kls Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "tools.h"
|
#include "tools.h"
|
||||||
@ -630,9 +630,9 @@ uint Utf8CharGet(const char *s, int Length)
|
|||||||
if (!Length)
|
if (!Length)
|
||||||
Length = Utf8CharLen(s);
|
Length = Utf8CharLen(s);
|
||||||
switch (Length) {
|
switch (Length) {
|
||||||
case 2: return ((*s & 0x1F) << 6) | (*(s + 1) & 0x3F);
|
case 2: return ((*s & 0x1F) << 6) | (*(s + 1) & 0x3F);
|
||||||
case 3: return ((*s & 0x0F) << 4) | ((*(s + 1) & 0x3F) << 6) | (*(s + 2) & 0x3F);
|
case 3: return ((*s & 0x0F) << 12) | ((*(s + 1) & 0x3F) << 6) | (*(s + 2) & 0x3F);
|
||||||
case 4: return ((*s & 0x07) << 2) | ((*(s + 1) & 0x3F) << 4) | ((*(s + 2) & 0x3F) << 6) | (*(s + 3) & 0x3F);
|
case 4: return ((*s & 0x07) << 18) | ((*(s + 1) & 0x3F) << 12) | ((*(s + 2) & 0x3F) << 6) | (*(s + 3) & 0x3F);
|
||||||
}
|
}
|
||||||
return *s;
|
return *s;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user