From d9afddd85be825c925ec724a80312b2e2433a1c3 Mon Sep 17 00:00:00 2001 From: Matthias Kramm Date: Sat, 24 Dec 2011 12:27:45 -0800 Subject: [PATCH] applied utf8 patch from George Prekas --- src/swfdump.c | 11 +++++++---- src/swfstrings.c | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/src/swfdump.c b/src/swfdump.c index 1500d0b5..2ef1cefb 100644 --- a/src/swfdump.c +++ b/src/swfdump.c @@ -39,6 +39,7 @@ #include #include "../lib/rfxswf.h" #include "../lib/args.h" +#include "../lib/utf8.h" static char * filename = 0; @@ -398,7 +399,7 @@ void textcallback(void*self, int*glyphs, int*xpos, int nr, int fontid, int fonts for(t=0;t=0) { if(glyphs[t] >= fonts[font]->numchars /*glyph is in range*/ || !fonts[font]->glyph2ascii /* font has ascii<->glyph mapping */ @@ -412,10 +413,12 @@ void textcallback(void*self, int*glyphs, int*xpos, int nr, int fontid, int fonts } else { a = glyphs[t]; } - if(a>=32) - printf("%c", a); - else + if(a>=32) { + char* utf8 = getUTF8(a); + printf("%s", utf8); + } else { printf("\\x%x", (int)a); + } } printf("\n"); } diff --git a/src/swfstrings.c b/src/swfstrings.c index c71d9142..27494b42 100644 --- a/src/swfstrings.c +++ b/src/swfstrings.c @@ -149,7 +149,7 @@ void textcallback(void*self, int*glyphs, int*advance, int nr, int fontid, int fo } } - unsigned char a; + unsigned int a; int advance = 0; if(font) { if(glyphs[t]<0 || glyphs[t] >= font->numchars /*glyph is not in range*/ -- 2.11.4.GIT