gnash-commit
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gnash-commit] gnash ChangeLog server/parser/shape_character_d...


From: Sandro Santilli
Subject: [Gnash-commit] gnash ChangeLog server/parser/shape_character_d...
Date: Mon, 14 May 2007 18:44:43 +0000

CVSROOT:        /sources/gnash
Module name:    gnash
Changes by:     Sandro Santilli <strk>  07/05/14 18:44:43

Modified files:
        .              : ChangeLog 
        server/parser  : shape_character_def.cpp 

Log message:
                * server/parser/shape_character_def.cpp (read): temporarely
                  disabled the "don't set line and fill styles if not defined 
yet".
                  It seems to break a lot of movies. We should find out why 
though,
                  as I'd think styles must *first* be defined, and *after* 
referred.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/gnash/ChangeLog?cvsroot=gnash&r1=1.3205&r2=1.3206
http://cvs.savannah.gnu.org/viewcvs/gnash/server/parser/shape_character_def.cpp?cvsroot=gnash&r1=1.23&r2=1.24

Patches:
Index: ChangeLog
===================================================================
RCS file: /sources/gnash/gnash/ChangeLog,v
retrieving revision 1.3205
retrieving revision 1.3206
diff -u -b -r1.3205 -r1.3206
--- ChangeLog   14 May 2007 17:57:45 -0000      1.3205
+++ ChangeLog   14 May 2007 18:44:42 -0000      1.3206
@@ -1,5 +1,12 @@
 2007-05-14 Sandro Santilli <address@hidden>
 
+       * server/parser/shape_character_def.cpp (read): temporarely 
+         disabled the "don't set line and fill styles if not defined yet".
+         It seems to break a lot of movies. We should find out why though,
+         as I'd think styles must *first* be defined, and *after* referred.
+
+2007-05-14 Sandro Santilli <address@hidden>
+
        * backend/render_handler_agg_style.h (is_solid): check argument
          with an assertion before accessing the m_styles vector.
        * server/parser/shape_character_def.cpp (read): don't set line and

Index: server/parser/shape_character_def.cpp
===================================================================
RCS file: /sources/gnash/gnash/server/parser/shape_character_def.cpp,v
retrieving revision 1.23
retrieving revision 1.24
diff -u -b -r1.23 -r1.24
--- server/parser/shape_character_def.cpp       14 May 2007 17:57:45 -0000      
1.23
+++ server/parser/shape_character_def.cpp       14 May 2007 18:44:43 -0000      
1.24
@@ -17,7 +17,7 @@
 // Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
 //
 
-/* $Id: shape_character_def.cpp,v 1.23 2007/05/14 17:57:45 strk Exp $ */
+/* $Id: shape_character_def.cpp,v 1.24 2007/05/14 18:44:43 strk Exp $ */
 
 // Based on the public domain shape.cpp of Thatcher Ulrich <address@hidden> 
2003
 
@@ -186,6 +186,8 @@
        read_line_styles(m_line_styles, in, tag_type);
     }
 
+    log_msg("Read %u fill styles, %u line styles", m_fill_styles.size(), 
m_line_styles.size());
+
     int        num_fill_bits = in->read_uint(4);
     int        num_line_bits = in->read_uint(4);
 
@@ -265,7 +267,7 @@
                if (style > 0) {
                    style += fill_base;
                }
-               if ( style < m_fill_styles.size() )
+               if ( 1 || style <= m_fill_styles.size() ) // 1-based index ! 
TODO: signedness comparison mismatch
                {
                        current_path.setLeftFill(style);
                        IF_VERBOSE_PARSE(
@@ -277,8 +279,9 @@
                else
                {
                        IF_VERBOSE_MALFORMED_SWF(
-                       log_swferror(_("Unknown fill style %d in 
fillStyle0Change record "), style);
+                       log_swferror(_("Unknown fill style %d in 
fillStyle0Change record - %u defined"), style, m_fill_styles.size());
                        );
+                       current_path.setLeftFill(0);
                }
 
            }
@@ -295,7 +298,7 @@
                if (style > 0) {
                    style += fill_base;
                }
-               if ( style < m_fill_styles.size() )
+               if ( 1 || style <= m_fill_styles.size() ) // 1-based index ! 
TODO: signedness comparison mismatch
                {
                        current_path.setRightFill(style); // getRightFill() = 
style;
                        IF_VERBOSE_PARSE (
@@ -309,6 +312,7 @@
                        IF_VERBOSE_MALFORMED_SWF(
                        log_swferror(_("Unknown fill style %d in 
fillStyle1Change record "), style);
                        );
+                       current_path.setRightFill(0);
                }
            }
            if ((flags & flagLineStyleChange) && num_line_bits > 0)
@@ -324,7 +328,7 @@
                if (style > 0) {
                    style += line_base;
                }
-               if ( style < m_line_styles.size() )
+               if ( 1 || style <= m_line_styles.size() ) // 1-based index ! 
TODO: signedness comparison mismatch
                {
                        current_path.setLineStyle(style);
                        IF_VERBOSE_PARSE (
@@ -339,6 +343,7 @@
                        IF_VERBOSE_MALFORMED_SWF(
                        log_swferror(_("Unknown line style %d in 
lienStyleChange record "), style);
                        );
+                       current_path.setLineStyle(0);
                }
            }
            if (flags & flagHasNewStyles)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]