From d2900b017d9db40a7dd63ee13baefa8bd2a1c49d Mon Sep 17 00:00:00 2001 From: Matthias Kramm Date: Mon, 16 Mar 2009 22:54:12 +0100 Subject: [PATCH] added more inner function checks --- lib/as3/ok/innerfunction.as | 20 ++++++++++++++++++++ lib/as3/ok/trycatch.as | 31 ++++++++++++++++++++++++------- 2 files changed, 44 insertions(+), 7 deletions(-) create mode 100644 lib/as3/ok/innerfunction.as diff --git a/lib/as3/ok/innerfunction.as b/lib/as3/ok/innerfunction.as new file mode 100644 index 0000000..46572dd --- /dev/null +++ b/lib/as3/ok/innerfunction.as @@ -0,0 +1,20 @@ +package { + import flash.display.MovieClip + import flash.events.Event + + public class Main extends flash.display.MovieClip { + public function Main() + { + var y:uint = 0; + var inc_y = function() { + y = y + 1; + } + + inc_y(); + inc_y(); + + if(y!=2) trace("error") + else trace("ok"); + } + } +} diff --git a/lib/as3/ok/trycatch.as b/lib/as3/ok/trycatch.as index 9f8dbc0..3b5fd39 100644 --- a/lib/as3/ok/trycatch.as +++ b/lib/as3/ok/trycatch.as @@ -5,11 +5,11 @@ package { public class MyError { } public class MyOtherError { - var ok5="ok 5/7"; + var ok5="ok 5/8"; } public class ClassWithStaticFunctions { static function ok7() { - trace("ok 7/7"); + trace("ok 7/8"); } } public class Main extends flash.display.MovieClip { @@ -24,7 +24,7 @@ package { flash.net.navigateToURL; } catch (e:Error) { } - trace("ok 6/7"); + trace("ok 6/8"); with(getClass()) { try { @@ -34,6 +34,22 @@ package { } } } + public function checkActivation():void + { + var y:uint = 0; + var inc_y = function() { + y = y + 1; + } + + try { + inc_y(); + throw new Error; + } catch(e:Error) { + inc_y(); + } + if(y!=2) trace("error") + else trace("ok 8/8"); + } function Main() { @@ -44,7 +60,7 @@ package { // MyError is not of the Error class trace("error"); } catch(error:MyError) { - trace("ok 1/7"); + trace("ok 1/8"); } catch(x) { trace("error"); } @@ -55,11 +71,11 @@ package { } catch(error:MyError) { trace("error"); } catch(x:*) { // ":*" is the same as "" - trace("ok 2/7"); + trace("ok 2/8"); } try { - trace("ok 3/7"); + trace("ok 3/8"); // don't throw any error } catch(error:MyError) { trace("error"); @@ -69,7 +85,7 @@ package { trace("error"); } - trace("ok 4/7"); + trace("ok 4/8"); try {throw new MyOtherError} catch(x:*) { @@ -77,6 +93,7 @@ package { } checkScope(); + checkActivation(); trace("[exit]"); } -- 1.7.10.4