gnash-commit
[Top][All Lists]
Advanced

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

[Gnash-commit] /srv/bzr/gnash/trunk r9695: Fix last make check failure (


From: Sandro Santilli
Subject: [Gnash-commit] /srv/bzr/gnash/trunk r9695: Fix last make check failure (but a bug is still around in collision detection)
Date: Mon, 08 Sep 2008 17:25:09 +0200
User-agent: Bazaar (1.5)

------------------------------------------------------------
revno: 9695
committer: Sandro Santilli <address@hidden>
branch nick: trunk
timestamp: Mon 2008-09-08 17:25:09 +0200
message:
  Fix last make check failure (but a bug is still around in collision detection)
modified:
  libcore/parser/shape_character_def.cpp
    ------------------------------------------------------------
    revno: 9692.2.1
    committer: Sandro Santilli <address@hidden>
    branch nick: mybranch
    timestamp: Mon 2008-09-08 17:22:31 +0200
    message:
      reintroduce bounds-based shortcut for collision detection. Fixes
      last unexpected failure in our testsuite (but will also need to be
      fixed seriously soon or late).
    modified:
      libcore/parser/shape_character_def.cpp
=== modified file 'libcore/parser/shape_character_def.cpp'
--- a/libcore/parser/shape_character_def.cpp    2008-09-04 15:32:42 +0000
+++ b/libcore/parser/shape_character_def.cpp    2008-09-08 15:22:31 +0000
@@ -807,16 +807,21 @@
 
         bool even_odd = true;  // later we will need non-zero for glyphs... 
(TODO)
 
-       // FIXME: if the shape contains non-scaled strokes
-       //        we can't rely on boundary itself for a quick
-       //        way out. Bounds supposedly already include
-       //        thickness, so we might keep a flag telling us
-       //        whether *non_scaled* strokes are present
-       //        and if not still use the boundary check.
-        //if (m_bound.point_test(x, y) == false)
-        //{
-               //return false;
-        //}
+        // FIXME: if the shape contains non-scaled strokes
+        //        we can't rely on boundary itself for a quick
+        //        way out. Bounds supposedly already include
+        //        thickness, so we might keep a flag telling us
+        //        whether *non_scaled* strokes are present
+        //        and if not still use the boundary check.
+        // NOTE: just skipping this test breaks a corner-case
+        //       in DrawingApiTest (kind of a fill-leakage making
+        //       the collision detection find you inside a self-crossing
+        //       shape).
+        //
+        if (m_bound.point_test(x, y) == false)
+        {
+            return false;
+        }
 
         unsigned npaths = m_paths.size();
         int counter = 0;


reply via email to

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