[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Gnash-commit] gnash ChangeLog server/font.cpp
From: |
Zou Lunkai |
Subject: |
[Gnash-commit] gnash ChangeLog server/font.cpp |
Date: |
Fri, 16 May 2008 07:18:48 +0000 |
CVSROOT: /sources/gnash
Module name: gnash
Changes by: Zou Lunkai <zoulunkai> 08/05/16 07:18:48
Modified files:
. : ChangeLog
server : font.cpp
Log message:
* server/font.cpp: use read_u8() instead of read_bit(), parser optimize.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.6613&r2=1.6614
http://cvs.savannah.gnu.org/viewcvs/gnash/server/font.cpp?cvsroot=gnash&r1=1.64&r2=1.65
Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.6613
retrieving revision 1.6614
diff -u -b -r1.6613 -r1.6614
--- ChangeLog 16 May 2008 07:15:37 -0000 1.6613
+++ ChangeLog 16 May 2008 07:18:45 -0000 1.6614
@@ -1,6 +1,7 @@
2008-05-16 Zou Lunkai <address@hidden>
* server/cxform.cpp: use read_u8() instead of read_bit(), parser
optimize.
+ * server/font.cpp: use read_u8() instead of read_bit(), parser optimize.
2008-05-16 Benjamin Wolsey <address@hidden>
Index: server/font.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/font.cpp,v
retrieving revision 1.64
retrieving revision 1.65
diff -u -b -r1.64 -r1.65
--- server/font.cpp 21 Apr 2008 11:27:43 -0000 1.64
+++ server/font.cpp 16 May 2008 07:18:47 -0000 1.65
@@ -222,17 +222,18 @@
log_parse(_("reading DefineFont2 or DefineFont3"));
);
- // TODO: should this be aligned ?
- in->ensureBytes(2); // 1 for the flags, 1 reserved
- bool has_layout = in->read_bit();
- m_shift_jis_chars = in->read_bit();
- m_unicode_chars = in->read_bit();
- m_ansi_chars = in->read_bit();
- bool wide_offsets = in->read_bit();
- m_wide_codes = in->read_bit();
- m_is_italic = in->read_bit();
- m_is_bold = in->read_bit();
- boost::uint8_t reserved = in->read_u8();
+ in->ensureBytes(2); // 1 for the flags, 1 unknown
+ int flags = in->read_u8();
+ bool has_layout = flags & (1 << 7);
+ m_shift_jis_chars = flags & (1 << 6);
+ m_unicode_chars = flags & (1 << 5);
+ m_ansi_chars = flags & (1 << 4);
+ bool wide_offsets = flags & (1 << 3);
+ m_wide_codes = flags & (1 << 2);
+ m_is_italic = flags & (1 << 1);
+ m_is_bold = flags & (1 << 0);
+ // don't know the usage, so we discard it.
+ int discarded = in->read_u8();
IF_VERBOSE_PARSE (
log_parse(" has_layout = %d", has_layout);
@@ -245,9 +246,6 @@
log_parse(" is_bold = %d", m_is_bold);
);
- // Inhibit compiler warning.
- reserved = reserved;
-
in->read_string_with_length(m_name);
in->ensureBytes(2);
@@ -413,7 +411,6 @@
{
assert(tag == SWF::DEFINEFONTINFO || tag ==
SWF::DEFINEFONTINFO2);
-
if ( tag == SWF::DEFINEFONTINFO2 )
{
// See: SWFalexref/SWFalexref.html#tag_definefont2
@@ -432,19 +429,14 @@
}
in->ensureBytes(1);
- unsigned char flags = in->read_u8();
-
- // The following 3 flags are reserved
- // for SWF6+
-
- // this is font_info_small for SWF6 or up
- m_unicode_chars = (flags & 0x20) != 0;
- m_shift_jis_chars = (flags & 0x10) != 0;
- m_ansi_chars = (flags & 0x08) != 0;
-
- m_is_italic = (flags & 0x04) != 0;
- m_is_bold = (flags & 0x02) != 0;
- m_wide_codes = (flags & 0x01) != 0;
+ int flags = in->read_u8();
+ // highest two bits are reserved.
+ m_unicode_chars = flags & (1 << 5); //???
+ m_shift_jis_chars = flags & (1 << 4);
+ m_ansi_chars = flags & (1 << 3);
+ m_is_italic = flags & (1 << 2);
+ m_is_bold = flags & (1 << 1);
+ m_wide_codes = flags & (1 << 0);
read_code_table(in);
}
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Gnash-commit] gnash ChangeLog server/font.cpp,
Zou Lunkai <=