[Swfdec] Branch 'as' - 4 commits - libswfdec/swfdec_codec_video.c libswfdec/swfdec_movie.c test/trace
Benjamin Otte
company at kemper.freedesktop.org
Tue Jun 19 04:30:11 PDT 2007
libswfdec/swfdec_codec_video.c | 2
libswfdec/swfdec_movie.c | 3
test/trace/Makefile.am | 193 ++++++++++++
test/trace/place-object-5.swf |binary
test/trace/place-object-5.swf.trace | 4
test/trace/place-object-6.swf |binary
test/trace/place-object-6.swf.trace | 2
test/trace/place-object-7.swf |binary
test/trace/place-object-7.swf.trace | 2
test/trace/place-object-button-5.swf |binary
test/trace/place-object-button-5.swf.trace | 2
test/trace/place-object-button-6.swf |binary
test/trace/place-object-button-6.swf.trace | 2
test/trace/place-object-button-7.swf |binary
test/trace/place-object-button-7.swf.trace | 2
test/trace/place-object-button-move-5.swf |binary
test/trace/place-object-button-move-5.swf.trace | 2
test/trace/place-object-button-move-6.swf |binary
test/trace/place-object-button-move-6.swf.trace | 2
test/trace/place-object-button-move-7.swf |binary
test/trace/place-object-button-move-7.swf.trace | 2
test/trace/place-object-button-move-name-5.swf |binary
test/trace/place-object-button-move-name-5.swf.trace | 2
test/trace/place-object-button-move-name-6.swf |binary
test/trace/place-object-button-move-name-6.swf.trace | 2
test/trace/place-object-button-move-name-7.swf |binary
test/trace/place-object-button-move-name-7.swf.trace | 2
test/trace/place-object-button-name-5.swf |binary
test/trace/place-object-button-name-5.swf.trace | 2
test/trace/place-object-button-name-6.swf |binary
test/trace/place-object-button-name-6.swf.trace | 2
test/trace/place-object-button-name-7.swf |binary
test/trace/place-object-button-name-7.swf.trace | 2
test/trace/place-object-char-5.swf |binary
test/trace/place-object-char-5.swf.trace | 2
test/trace/place-object-char-6.swf |binary
test/trace/place-object-char-6.swf.trace | 2
test/trace/place-object-char-7.swf |binary
test/trace/place-object-char-7.swf.trace | 2
test/trace/place-object-char-move-5.swf |binary
test/trace/place-object-char-move-5.swf.trace | 2
test/trace/place-object-char-move-6.swf |binary
test/trace/place-object-char-move-6.swf.trace | 2
test/trace/place-object-char-move-7.swf |binary
test/trace/place-object-char-move-7.swf.trace | 2
test/trace/place-object-char-move-name-5.swf |binary
test/trace/place-object-char-move-name-5.swf.trace | 2
test/trace/place-object-char-move-name-6.swf |binary
test/trace/place-object-char-move-name-6.swf.trace | 2
test/trace/place-object-char-move-name-7.swf |binary
test/trace/place-object-char-move-name-7.swf.trace | 2
test/trace/place-object-char-name-5.swf |binary
test/trace/place-object-char-name-5.swf.trace | 2
test/trace/place-object-char-name-6.swf |binary
test/trace/place-object-char-name-6.swf.trace | 2
test/trace/place-object-char-name-7.swf |binary
test/trace/place-object-char-name-7.swf.trace | 2
test/trace/place-object-move-5.swf |binary
test/trace/place-object-move-5.swf.trace | 2
test/trace/place-object-move-6.swf |binary
test/trace/place-object-move-6.swf.trace | 2
test/trace/place-object-move-7.swf |binary
test/trace/place-object-move-7.swf.trace | 2
test/trace/place-object-move-name-5.swf |binary
test/trace/place-object-move-name-5.swf.trace | 2
test/trace/place-object-move-name-6.swf |binary
test/trace/place-object-move-name-6.swf.trace | 2
test/trace/place-object-move-name-7.swf |binary
test/trace/place-object-move-name-7.swf.trace | 2
test/trace/place-object-movie-5.swf |binary
test/trace/place-object-movie-5.swf.trace | 4
test/trace/place-object-movie-6.swf |binary
test/trace/place-object-movie-6.swf.trace | 2
test/trace/place-object-movie-7.swf |binary
test/trace/place-object-movie-7.swf.trace | 2
test/trace/place-object-movie-move-5.swf |binary
test/trace/place-object-movie-move-5.swf.trace | 2
test/trace/place-object-movie-move-6.swf |binary
test/trace/place-object-movie-move-6.swf.trace | 2
test/trace/place-object-movie-move-7.swf |binary
test/trace/place-object-movie-move-7.swf.trace | 2
test/trace/place-object-movie-move-name-5.swf |binary
test/trace/place-object-movie-move-name-5.swf.trace | 2
test/trace/place-object-movie-move-name-6.swf |binary
test/trace/place-object-movie-move-name-6.swf.trace | 2
test/trace/place-object-movie-move-name-7.swf |binary
test/trace/place-object-movie-move-name-7.swf.trace | 2
test/trace/place-object-movie-name-5.swf |binary
test/trace/place-object-movie-name-5.swf.trace | 4
test/trace/place-object-movie-name-6.swf |binary
test/trace/place-object-movie-name-6.swf.trace | 2
test/trace/place-object-movie-name-7.swf |binary
test/trace/place-object-movie-name-7.swf.trace | 2
test/trace/place-object-name-5.swf |binary
test/trace/place-object-name-5.swf.trace | 4
test/trace/place-object-name-6.swf |binary
test/trace/place-object-name-6.swf.trace | 2
test/trace/place-object-name-7.swf |binary
test/trace/place-object-name-7.swf.trace | 2
test/trace/place-object-remove-5.swf |binary
test/trace/place-object-remove-5.swf.trace | 5
test/trace/place-object-remove-6.swf |binary
test/trace/place-object-remove-6.swf.trace | 5
test/trace/place-object-remove-7.swf |binary
test/trace/place-object-remove-7.swf.trace | 5
test/trace/place-object-remove-button-5.swf |binary
test/trace/place-object-remove-button-5.swf.trace | 3
test/trace/place-object-remove-button-6.swf |binary
test/trace/place-object-remove-button-6.swf.trace | 3
test/trace/place-object-remove-button-7.swf |binary
test/trace/place-object-remove-button-7.swf.trace | 3
test/trace/place-object-remove-button-move-5.swf |binary
test/trace/place-object-remove-button-move-5.swf.trace | 3
test/trace/place-object-remove-button-move-6.swf |binary
test/trace/place-object-remove-button-move-6.swf.trace | 3
test/trace/place-object-remove-button-move-7.swf |binary
test/trace/place-object-remove-button-move-7.swf.trace | 3
test/trace/place-object-remove-button-move-name-5.swf |binary
test/trace/place-object-remove-button-move-name-5.swf.trace | 3
test/trace/place-object-remove-button-move-name-6.swf |binary
test/trace/place-object-remove-button-move-name-6.swf.trace | 3
test/trace/place-object-remove-button-move-name-7.swf |binary
test/trace/place-object-remove-button-move-name-7.swf.trace | 3
test/trace/place-object-remove-button-name-5.swf |binary
test/trace/place-object-remove-button-name-5.swf.trace | 3
test/trace/place-object-remove-button-name-6.swf |binary
test/trace/place-object-remove-button-name-6.swf.trace | 3
test/trace/place-object-remove-button-name-7.swf |binary
test/trace/place-object-remove-button-name-7.swf.trace | 3
test/trace/place-object-remove-char-5.swf |binary
test/trace/place-object-remove-char-5.swf.trace | 3
test/trace/place-object-remove-char-6.swf |binary
test/trace/place-object-remove-char-6.swf.trace | 3
test/trace/place-object-remove-char-7.swf |binary
test/trace/place-object-remove-char-7.swf.trace | 3
test/trace/place-object-remove-char-move-5.swf |binary
test/trace/place-object-remove-char-move-5.swf.trace | 3
test/trace/place-object-remove-char-move-6.swf |binary
test/trace/place-object-remove-char-move-6.swf.trace | 3
test/trace/place-object-remove-char-move-7.swf |binary
test/trace/place-object-remove-char-move-7.swf.trace | 3
test/trace/place-object-remove-char-move-name-5.swf |binary
test/trace/place-object-remove-char-move-name-5.swf.trace | 3
test/trace/place-object-remove-char-move-name-6.swf |binary
test/trace/place-object-remove-char-move-name-6.swf.trace | 3
test/trace/place-object-remove-char-move-name-7.swf |binary
test/trace/place-object-remove-char-move-name-7.swf.trace | 3
test/trace/place-object-remove-char-name-5.swf |binary
test/trace/place-object-remove-char-name-5.swf.trace | 3
test/trace/place-object-remove-char-name-6.swf |binary
test/trace/place-object-remove-char-name-6.swf.trace | 3
test/trace/place-object-remove-char-name-7.swf |binary
test/trace/place-object-remove-char-name-7.swf.trace | 3
test/trace/place-object-remove-move-5.swf |binary
test/trace/place-object-remove-move-5.swf.trace | 3
test/trace/place-object-remove-move-6.swf |binary
test/trace/place-object-remove-move-6.swf.trace | 3
test/trace/place-object-remove-move-7.swf |binary
test/trace/place-object-remove-move-7.swf.trace | 3
test/trace/place-object-remove-move-name-5.swf |binary
test/trace/place-object-remove-move-name-5.swf.trace | 3
test/trace/place-object-remove-move-name-6.swf |binary
test/trace/place-object-remove-move-name-6.swf.trace | 3
test/trace/place-object-remove-move-name-7.swf |binary
test/trace/place-object-remove-move-name-7.swf.trace | 3
test/trace/place-object-remove-movie-5.swf |binary
test/trace/place-object-remove-movie-5.swf.trace | 5
test/trace/place-object-remove-movie-6.swf |binary
test/trace/place-object-remove-movie-6.swf.trace | 5
test/trace/place-object-remove-movie-7.swf |binary
test/trace/place-object-remove-movie-7.swf.trace | 5
test/trace/place-object-remove-movie-move-5.swf |binary
test/trace/place-object-remove-movie-move-5.swf.trace | 3
test/trace/place-object-remove-movie-move-6.swf |binary
test/trace/place-object-remove-movie-move-6.swf.trace | 3
test/trace/place-object-remove-movie-move-7.swf |binary
test/trace/place-object-remove-movie-move-7.swf.trace | 3
test/trace/place-object-remove-movie-move-name-5.swf |binary
test/trace/place-object-remove-movie-move-name-5.swf.trace | 3
test/trace/place-object-remove-movie-move-name-6.swf |binary
test/trace/place-object-remove-movie-move-name-6.swf.trace | 3
test/trace/place-object-remove-movie-move-name-7.swf |binary
test/trace/place-object-remove-movie-move-name-7.swf.trace | 3
test/trace/place-object-remove-movie-name-5.swf |binary
test/trace/place-object-remove-movie-name-5.swf.trace | 5
test/trace/place-object-remove-movie-name-6.swf |binary
test/trace/place-object-remove-movie-name-6.swf.trace | 5
test/trace/place-object-remove-movie-name-7.swf |binary
test/trace/place-object-remove-movie-name-7.swf.trace | 5
test/trace/place-object-remove-name-5.swf |binary
test/trace/place-object-remove-name-5.swf.trace | 5
test/trace/place-object-remove-name-6.swf |binary
test/trace/place-object-remove-name-6.swf.trace | 5
test/trace/place-object-remove-name-7.swf |binary
test/trace/place-object-remove-name-7.swf.trace | 5
test/trace/place-object.c | 171 ++++++++++
196 files changed, 639 insertions(+), 2 deletions(-)
New commits:
diff-tree e3ec3e22461f214518eb34f429d7ca7bd8b81630 (from 28447808e16488d22eb3667436d888dd2c02615e)
Author: Benjamin Otte <otte at gnome.org>
Date: Tue Jun 19 13:17:52 2007 +0200
apparently buttons get a name, too
I think TextFields probably get a name, too, just like everything scriptable.
There should probably be a SwfdecScriptable base class for all of these.
diff --git a/libswfdec/swfdec_movie.c b/libswfdec/swfdec_movie.c
index 5f57f9b..1b09906 100644
--- a/libswfdec/swfdec_movie.c
+++ b/libswfdec/swfdec_movie.c
@@ -29,6 +29,7 @@
#include "swfdec_movie.h"
#include "swfdec_as_context.h"
+#include "swfdec_button_movie.h"
#include "swfdec_debug.h"
#include "swfdec_debugger.h"
#include "swfdec_event.h"
@@ -919,7 +920,7 @@ swfdec_movie_new (SwfdecPlayer *player,
movie->name = name;
} else {
movie->original_name = SWFDEC_AS_STR_EMPTY;
- if (SWFDEC_IS_SPRITE_MOVIE (movie)) {
+ if (SWFDEC_IS_SPRITE_MOVIE (movie) || SWFDEC_IS_BUTTON_MOVIE (movie)) {
movie->name = swfdec_as_context_give_string (SWFDEC_AS_CONTEXT (player),
g_strdup_printf ("instance%u", ++player->unnamed_count));
} else {
diff-tree 28447808e16488d22eb3667436d888dd2c02615e (from 2727e882d4faf821f08ffd34a8e2d79a32320604)
Author: Benjamin Otte <otte at gnome.org>
Date: Tue Jun 19 10:35:09 2007 +0200
remove \n from debug line
diff --git a/libswfdec/swfdec_codec_video.c b/libswfdec/swfdec_codec_video.c
index c4984d5..7417758 100644
--- a/libswfdec/swfdec_codec_video.c
+++ b/libswfdec/swfdec_codec_video.c
@@ -61,7 +61,7 @@ swfdec_video_decoder_new (SwfdecVideoFor
g_return_val_if_fail (ret->decode, ret);
g_return_val_if_fail (ret->free, ret);
} else {
- SWFDEC_WARNING ("no decoder found for codec %u\n", (guint) format);
+ SWFDEC_WARNING ("no decoder found for codec %u", (guint) format);
}
return ret;
}
diff-tree 2727e882d4faf821f08ffd34a8e2d79a32320604 (from 916ebe262b4a5547375306da01ab803b38854df1)
Author: Benjamin Otte <otte at gnome.org>
Date: Tue Jun 19 10:33:26 2007 +0200
too much scripted stuff - remove stray \
diff --git a/test/trace/Makefile.am b/test/trace/Makefile.am
index 93aaac7..7e76a6f 100644
--- a/test/trace/Makefile.am
+++ b/test/trace/Makefile.am
@@ -1,4 +1,4 @@
-check_PROGRAMS = trace \
+check_PROGRAMS = trace
TESTS = $(check_PROGRAMS)
diff-tree 916ebe262b4a5547375306da01ab803b38854df1 (from 56c57b5b317120e3699c0c673942815691c9fa2e)
Author: Benjamin Otte <otte at gnome.org>
Date: Tue Jun 19 10:28:28 2007 +0200
add main test for PlaceObject rewrite and the most interesting outputs of that test
Note: Even though that is 96 tests and looks a lot, it isn't.
./trace ran all 1536 tests in ~10 seconds on my machine, so this should take <1 second.
diff --git a/test/trace/Makefile.am b/test/trace/Makefile.am
index f3e4729..93aaac7 100644
--- a/test/trace/Makefile.am
+++ b/test/trace/Makefile.am
@@ -1,4 +1,4 @@
-check_PROGRAMS = trace
+check_PROGRAMS = trace \
TESTS = $(check_PROGRAMS)
@@ -322,6 +322,199 @@ EXTRA_DIST = \
order.swf.trace \
parent-root.swf \
parent-root.swf.trace \
+ place-object.c \
+ place-object-5.swf \
+ place-object-5.swf.trace \
+ place-object-6.swf \
+ place-object-6.swf.trace \
+ place-object-7.swf \
+ place-object-7.swf.trace \
+ place-object-button-5.swf \
+ place-object-button-5.swf.trace \
+ place-object-button-6.swf \
+ place-object-button-6.swf.trace \
+ place-object-button-7.swf \
+ place-object-button-7.swf.trace \
+ place-object-button-move-5.swf \
+ place-object-button-move-5.swf.trace \
+ place-object-button-move-6.swf \
+ place-object-button-move-6.swf.trace \
+ place-object-button-move-7.swf \
+ place-object-button-move-7.swf.trace \
+ place-object-button-move-name-5.swf \
+ place-object-button-move-name-5.swf.trace \
+ place-object-button-move-name-6.swf \
+ place-object-button-move-name-6.swf.trace \
+ place-object-button-move-name-7.swf \
+ place-object-button-move-name-7.swf.trace \
+ place-object-button-name-5.swf \
+ place-object-button-name-5.swf.trace \
+ place-object-button-name-6.swf \
+ place-object-button-name-6.swf.trace \
+ place-object-button-name-7.swf \
+ place-object-button-name-7.swf.trace \
+ place-object-char-5.swf \
+ place-object-char-5.swf.trace \
+ place-object-char-6.swf \
+ place-object-char-6.swf.trace \
+ place-object-char-7.swf \
+ place-object-char-7.swf.trace \
+ place-object-char-move-5.swf \
+ place-object-char-move-5.swf.trace \
+ place-object-char-move-6.swf \
+ place-object-char-move-6.swf.trace \
+ place-object-char-move-7.swf \
+ place-object-char-move-7.swf.trace \
+ place-object-char-move-name-5.swf \
+ place-object-char-move-name-5.swf.trace \
+ place-object-char-move-name-6.swf \
+ place-object-char-move-name-6.swf.trace \
+ place-object-char-move-name-7.swf \
+ place-object-char-move-name-7.swf.trace \
+ place-object-char-name-5.swf \
+ place-object-char-name-5.swf.trace \
+ place-object-char-name-6.swf \
+ place-object-char-name-6.swf.trace \
+ place-object-char-name-7.swf \
+ place-object-char-name-7.swf.trace \
+ place-object-move-5.swf \
+ place-object-move-5.swf.trace \
+ place-object-move-6.swf \
+ place-object-move-6.swf.trace \
+ place-object-move-7.swf \
+ place-object-move-7.swf.trace \
+ place-object-move-name-5.swf \
+ place-object-move-name-5.swf.trace \
+ place-object-move-name-6.swf \
+ place-object-move-name-6.swf.trace \
+ place-object-move-name-7.swf \
+ place-object-move-name-7.swf.trace \
+ place-object-movie-5.swf \
+ place-object-movie-5.swf.trace \
+ place-object-movie-6.swf \
+ place-object-movie-6.swf.trace \
+ place-object-movie-7.swf \
+ place-object-movie-7.swf.trace \
+ place-object-movie-move-5.swf \
+ place-object-movie-move-5.swf.trace \
+ place-object-movie-move-6.swf \
+ place-object-movie-move-6.swf.trace \
+ place-object-movie-move-7.swf \
+ place-object-movie-move-7.swf.trace \
+ place-object-movie-move-name-5.swf \
+ place-object-movie-move-name-5.swf.trace \
+ place-object-movie-move-name-6.swf \
+ place-object-movie-move-name-6.swf.trace \
+ place-object-movie-move-name-7.swf \
+ place-object-movie-move-name-7.swf.trace \
+ place-object-movie-name-5.swf \
+ place-object-movie-name-5.swf.trace \
+ place-object-movie-name-6.swf \
+ place-object-movie-name-6.swf.trace \
+ place-object-movie-name-7.swf \
+ place-object-movie-name-7.swf.trace \
+ place-object-name-5.swf \
+ place-object-name-5.swf.trace \
+ place-object-name-6.swf \
+ place-object-name-6.swf.trace \
+ place-object-name-7.swf \
+ place-object-name-7.swf.trace \
+ place-object-remove-5.swf \
+ place-object-remove-5.swf.trace \
+ place-object-remove-6.swf \
+ place-object-remove-6.swf.trace \
+ place-object-remove-7.swf \
+ place-object-remove-7.swf.trace \
+ place-object-remove-button-5.swf \
+ place-object-remove-button-5.swf.trace \
+ place-object-remove-button-6.swf \
+ place-object-remove-button-6.swf.trace \
+ place-object-remove-button-7.swf \
+ place-object-remove-button-7.swf.trace \
+ place-object-remove-button-move-5.swf \
+ place-object-remove-button-move-5.swf.trace \
+ place-object-remove-button-move-6.swf \
+ place-object-remove-button-move-6.swf.trace \
+ place-object-remove-button-move-7.swf \
+ place-object-remove-button-move-7.swf.trace \
+ place-object-remove-button-move-name-5.swf \
+ place-object-remove-button-move-name-5.swf.trace \
+ place-object-remove-button-move-name-6.swf \
+ place-object-remove-button-move-name-6.swf.trace \
+ place-object-remove-button-move-name-7.swf \
+ place-object-remove-button-move-name-7.swf.trace \
+ place-object-remove-button-name-5.swf \
+ place-object-remove-button-name-5.swf.trace \
+ place-object-remove-button-name-6.swf \
+ place-object-remove-button-name-6.swf.trace \
+ place-object-remove-button-name-7.swf \
+ place-object-remove-button-name-7.swf.trace \
+ place-object-remove-char-5.swf \
+ place-object-remove-char-5.swf.trace \
+ place-object-remove-char-6.swf \
+ place-object-remove-char-6.swf.trace \
+ place-object-remove-char-7.swf \
+ place-object-remove-char-7.swf.trace \
+ place-object-remove-char-move-5.swf \
+ place-object-remove-char-move-5.swf.trace \
+ place-object-remove-char-move-6.swf \
+ place-object-remove-char-move-6.swf.trace \
+ place-object-remove-char-move-7.swf \
+ place-object-remove-char-move-7.swf.trace \
+ place-object-remove-char-move-name-5.swf \
+ place-object-remove-char-move-name-5.swf.trace \
+ place-object-remove-char-move-name-6.swf \
+ place-object-remove-char-move-name-6.swf.trace \
+ place-object-remove-char-move-name-7.swf \
+ place-object-remove-char-move-name-7.swf.trace \
+ place-object-remove-char-name-5.swf \
+ place-object-remove-char-name-5.swf.trace \
+ place-object-remove-char-name-6.swf \
+ place-object-remove-char-name-6.swf.trace \
+ place-object-remove-char-name-7.swf \
+ place-object-remove-char-name-7.swf.trace \
+ place-object-remove-move-5.swf \
+ place-object-remove-move-5.swf.trace \
+ place-object-remove-move-6.swf \
+ place-object-remove-move-6.swf.trace \
+ place-object-remove-move-7.swf \
+ place-object-remove-move-7.swf.trace \
+ place-object-remove-move-name-5.swf \
+ place-object-remove-move-name-5.swf.trace \
+ place-object-remove-move-name-6.swf \
+ place-object-remove-move-name-6.swf.trace \
+ place-object-remove-move-name-7.swf \
+ place-object-remove-move-name-7.swf.trace \
+ place-object-remove-movie-5.swf \
+ place-object-remove-movie-5.swf.trace \
+ place-object-remove-movie-6.swf \
+ place-object-remove-movie-6.swf.trace \
+ place-object-remove-movie-7.swf \
+ place-object-remove-movie-7.swf.trace \
+ place-object-remove-movie-move-5.swf \
+ place-object-remove-movie-move-5.swf.trace \
+ place-object-remove-movie-move-6.swf \
+ place-object-remove-movie-move-6.swf.trace \
+ place-object-remove-movie-move-7.swf \
+ place-object-remove-movie-move-7.swf.trace \
+ place-object-remove-movie-move-name-5.swf \
+ place-object-remove-movie-move-name-5.swf.trace \
+ place-object-remove-movie-move-name-6.swf \
+ place-object-remove-movie-move-name-6.swf.trace \
+ place-object-remove-movie-move-name-7.swf \
+ place-object-remove-movie-move-name-7.swf.trace \
+ place-object-remove-movie-name-5.swf \
+ place-object-remove-movie-name-5.swf.trace \
+ place-object-remove-movie-name-6.swf \
+ place-object-remove-movie-name-6.swf.trace \
+ place-object-remove-movie-name-7.swf \
+ place-object-remove-movie-name-7.swf.trace \
+ place-object-remove-name-5.swf \
+ place-object-remove-name-5.swf.trace \
+ place-object-remove-name-6.swf \
+ place-object-remove-name-6.swf.trace \
+ place-object-remove-name-7.swf \
+ place-object-remove-name-7.swf.trace \
preload.swf \
preload.swf.trace \
prototypes.swf \
diff --git a/test/trace/place-object-5.swf b/test/trace/place-object-5.swf
new file mode 100644
index 0000000..f411431
Binary files /dev/null and b/test/trace/place-object-5.swf differ
diff --git a/test/trace/place-object-5.swf.trace b/test/trace/place-object-5.swf.trace
new file mode 100644
index 0000000..efd5677
--- /dev/null
+++ b/test/trace/place-object-5.swf.trace
@@ -0,0 +1,4 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instance2
+2: load _level0.instance2
diff --git a/test/trace/place-object-6.swf b/test/trace/place-object-6.swf
new file mode 100644
index 0000000..c410254
Binary files /dev/null and b/test/trace/place-object-6.swf differ
diff --git a/test/trace/place-object-6.swf.trace b/test/trace/place-object-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-7.swf b/test/trace/place-object-7.swf
new file mode 100644
index 0000000..05f8998
Binary files /dev/null and b/test/trace/place-object-7.swf differ
diff --git a/test/trace/place-object-7.swf.trace b/test/trace/place-object-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-5.swf b/test/trace/place-object-button-5.swf
new file mode 100644
index 0000000..214933d
Binary files /dev/null and b/test/trace/place-object-button-5.swf differ
diff --git a/test/trace/place-object-button-5.swf.trace b/test/trace/place-object-button-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-6.swf b/test/trace/place-object-button-6.swf
new file mode 100644
index 0000000..b451158
Binary files /dev/null and b/test/trace/place-object-button-6.swf differ
diff --git a/test/trace/place-object-button-6.swf.trace b/test/trace/place-object-button-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-7.swf b/test/trace/place-object-button-7.swf
new file mode 100644
index 0000000..7321e78
Binary files /dev/null and b/test/trace/place-object-button-7.swf differ
diff --git a/test/trace/place-object-button-7.swf.trace b/test/trace/place-object-button-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-move-5.swf b/test/trace/place-object-button-move-5.swf
new file mode 100644
index 0000000..b93c52f
Binary files /dev/null and b/test/trace/place-object-button-move-5.swf differ
diff --git a/test/trace/place-object-button-move-5.swf.trace b/test/trace/place-object-button-move-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-move-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-move-6.swf b/test/trace/place-object-button-move-6.swf
new file mode 100644
index 0000000..f2723ae
Binary files /dev/null and b/test/trace/place-object-button-move-6.swf differ
diff --git a/test/trace/place-object-button-move-6.swf.trace b/test/trace/place-object-button-move-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-move-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-move-7.swf b/test/trace/place-object-button-move-7.swf
new file mode 100644
index 0000000..22d1d64
Binary files /dev/null and b/test/trace/place-object-button-move-7.swf differ
diff --git a/test/trace/place-object-button-move-7.swf.trace b/test/trace/place-object-button-move-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-move-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-move-name-5.swf b/test/trace/place-object-button-move-name-5.swf
new file mode 100644
index 0000000..16a841e
Binary files /dev/null and b/test/trace/place-object-button-move-name-5.swf differ
diff --git a/test/trace/place-object-button-move-name-5.swf.trace b/test/trace/place-object-button-move-name-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-move-name-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-move-name-6.swf b/test/trace/place-object-button-move-name-6.swf
new file mode 100644
index 0000000..9323589
Binary files /dev/null and b/test/trace/place-object-button-move-name-6.swf differ
diff --git a/test/trace/place-object-button-move-name-6.swf.trace b/test/trace/place-object-button-move-name-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-move-name-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-move-name-7.swf b/test/trace/place-object-button-move-name-7.swf
new file mode 100644
index 0000000..1ab25ff
Binary files /dev/null and b/test/trace/place-object-button-move-name-7.swf differ
diff --git a/test/trace/place-object-button-move-name-7.swf.trace b/test/trace/place-object-button-move-name-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-move-name-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-name-5.swf b/test/trace/place-object-button-name-5.swf
new file mode 100644
index 0000000..07714f4
Binary files /dev/null and b/test/trace/place-object-button-name-5.swf differ
diff --git a/test/trace/place-object-button-name-5.swf.trace b/test/trace/place-object-button-name-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-name-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-name-6.swf b/test/trace/place-object-button-name-6.swf
new file mode 100644
index 0000000..61507e0
Binary files /dev/null and b/test/trace/place-object-button-name-6.swf differ
diff --git a/test/trace/place-object-button-name-6.swf.trace b/test/trace/place-object-button-name-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-name-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-button-name-7.swf b/test/trace/place-object-button-name-7.swf
new file mode 100644
index 0000000..e3439bd
Binary files /dev/null and b/test/trace/place-object-button-name-7.swf differ
diff --git a/test/trace/place-object-button-name-7.swf.trace b/test/trace/place-object-button-name-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-button-name-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-5.swf b/test/trace/place-object-char-5.swf
new file mode 100644
index 0000000..a0593c4
Binary files /dev/null and b/test/trace/place-object-char-5.swf differ
diff --git a/test/trace/place-object-char-5.swf.trace b/test/trace/place-object-char-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-6.swf b/test/trace/place-object-char-6.swf
new file mode 100644
index 0000000..2557b64
Binary files /dev/null and b/test/trace/place-object-char-6.swf differ
diff --git a/test/trace/place-object-char-6.swf.trace b/test/trace/place-object-char-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-7.swf b/test/trace/place-object-char-7.swf
new file mode 100644
index 0000000..5b6208b
Binary files /dev/null and b/test/trace/place-object-char-7.swf differ
diff --git a/test/trace/place-object-char-7.swf.trace b/test/trace/place-object-char-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-move-5.swf b/test/trace/place-object-char-move-5.swf
new file mode 100644
index 0000000..effb89a
Binary files /dev/null and b/test/trace/place-object-char-move-5.swf differ
diff --git a/test/trace/place-object-char-move-5.swf.trace b/test/trace/place-object-char-move-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-move-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-move-6.swf b/test/trace/place-object-char-move-6.swf
new file mode 100644
index 0000000..1971324
Binary files /dev/null and b/test/trace/place-object-char-move-6.swf differ
diff --git a/test/trace/place-object-char-move-6.swf.trace b/test/trace/place-object-char-move-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-move-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-move-7.swf b/test/trace/place-object-char-move-7.swf
new file mode 100644
index 0000000..6944817
Binary files /dev/null and b/test/trace/place-object-char-move-7.swf differ
diff --git a/test/trace/place-object-char-move-7.swf.trace b/test/trace/place-object-char-move-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-move-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-move-name-5.swf b/test/trace/place-object-char-move-name-5.swf
new file mode 100644
index 0000000..a40d6ac
Binary files /dev/null and b/test/trace/place-object-char-move-name-5.swf differ
diff --git a/test/trace/place-object-char-move-name-5.swf.trace b/test/trace/place-object-char-move-name-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-move-name-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-move-name-6.swf b/test/trace/place-object-char-move-name-6.swf
new file mode 100644
index 0000000..2b95f32
Binary files /dev/null and b/test/trace/place-object-char-move-name-6.swf differ
diff --git a/test/trace/place-object-char-move-name-6.swf.trace b/test/trace/place-object-char-move-name-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-move-name-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-move-name-7.swf b/test/trace/place-object-char-move-name-7.swf
new file mode 100644
index 0000000..dbc98ef
Binary files /dev/null and b/test/trace/place-object-char-move-name-7.swf differ
diff --git a/test/trace/place-object-char-move-name-7.swf.trace b/test/trace/place-object-char-move-name-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-move-name-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-name-5.swf b/test/trace/place-object-char-name-5.swf
new file mode 100644
index 0000000..baa585b
Binary files /dev/null and b/test/trace/place-object-char-name-5.swf differ
diff --git a/test/trace/place-object-char-name-5.swf.trace b/test/trace/place-object-char-name-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-name-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-name-6.swf b/test/trace/place-object-char-name-6.swf
new file mode 100644
index 0000000..78c04d2
Binary files /dev/null and b/test/trace/place-object-char-name-6.swf differ
diff --git a/test/trace/place-object-char-name-6.swf.trace b/test/trace/place-object-char-name-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-name-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-char-name-7.swf b/test/trace/place-object-char-name-7.swf
new file mode 100644
index 0000000..a5ee8d3
Binary files /dev/null and b/test/trace/place-object-char-name-7.swf differ
diff --git a/test/trace/place-object-char-name-7.swf.trace b/test/trace/place-object-char-name-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-char-name-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-move-5.swf b/test/trace/place-object-move-5.swf
new file mode 100644
index 0000000..2515a17
Binary files /dev/null and b/test/trace/place-object-move-5.swf differ
diff --git a/test/trace/place-object-move-5.swf.trace b/test/trace/place-object-move-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-move-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-move-6.swf b/test/trace/place-object-move-6.swf
new file mode 100644
index 0000000..e90c9e3
Binary files /dev/null and b/test/trace/place-object-move-6.swf differ
diff --git a/test/trace/place-object-move-6.swf.trace b/test/trace/place-object-move-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-move-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-move-7.swf b/test/trace/place-object-move-7.swf
new file mode 100644
index 0000000..3d043dd
Binary files /dev/null and b/test/trace/place-object-move-7.swf differ
diff --git a/test/trace/place-object-move-7.swf.trace b/test/trace/place-object-move-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-move-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-move-name-5.swf b/test/trace/place-object-move-name-5.swf
new file mode 100644
index 0000000..21b1c13
Binary files /dev/null and b/test/trace/place-object-move-name-5.swf differ
diff --git a/test/trace/place-object-move-name-5.swf.trace b/test/trace/place-object-move-name-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-move-name-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-move-name-6.swf b/test/trace/place-object-move-name-6.swf
new file mode 100644
index 0000000..f0da785
Binary files /dev/null and b/test/trace/place-object-move-name-6.swf differ
diff --git a/test/trace/place-object-move-name-6.swf.trace b/test/trace/place-object-move-name-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-move-name-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-move-name-7.swf b/test/trace/place-object-move-name-7.swf
new file mode 100644
index 0000000..1cdd613
Binary files /dev/null and b/test/trace/place-object-move-name-7.swf differ
diff --git a/test/trace/place-object-move-name-7.swf.trace b/test/trace/place-object-move-name-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-move-name-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-movie-5.swf b/test/trace/place-object-movie-5.swf
new file mode 100644
index 0000000..27cc919
Binary files /dev/null and b/test/trace/place-object-movie-5.swf differ
diff --git a/test/trace/place-object-movie-5.swf.trace b/test/trace/place-object-movie-5.swf.trace
new file mode 100644
index 0000000..efd5677
--- /dev/null
+++ b/test/trace/place-object-movie-5.swf.trace
@@ -0,0 +1,4 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instance2
+2: load _level0.instance2
diff --git a/test/trace/place-object-movie-6.swf b/test/trace/place-object-movie-6.swf
new file mode 100644
index 0000000..e07472b
Binary files /dev/null and b/test/trace/place-object-movie-6.swf differ
diff --git a/test/trace/place-object-movie-6.swf.trace b/test/trace/place-object-movie-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-movie-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-movie-7.swf b/test/trace/place-object-movie-7.swf
new file mode 100644
index 0000000..eee9f87
Binary files /dev/null and b/test/trace/place-object-movie-7.swf differ
diff --git a/test/trace/place-object-movie-7.swf.trace b/test/trace/place-object-movie-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-movie-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-movie-move-5.swf b/test/trace/place-object-movie-move-5.swf
new file mode 100644
index 0000000..9d68104
Binary files /dev/null and b/test/trace/place-object-movie-move-5.swf differ
diff --git a/test/trace/place-object-movie-move-5.swf.trace b/test/trace/place-object-movie-move-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-movie-move-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-movie-move-6.swf b/test/trace/place-object-movie-move-6.swf
new file mode 100644
index 0000000..bcf8871
Binary files /dev/null and b/test/trace/place-object-movie-move-6.swf differ
diff --git a/test/trace/place-object-movie-move-6.swf.trace b/test/trace/place-object-movie-move-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-movie-move-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-movie-move-7.swf b/test/trace/place-object-movie-move-7.swf
new file mode 100644
index 0000000..5ffce19
Binary files /dev/null and b/test/trace/place-object-movie-move-7.swf differ
diff --git a/test/trace/place-object-movie-move-7.swf.trace b/test/trace/place-object-movie-move-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-movie-move-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-movie-move-name-5.swf b/test/trace/place-object-movie-move-name-5.swf
new file mode 100644
index 0000000..dce25b7
Binary files /dev/null and b/test/trace/place-object-movie-move-name-5.swf differ
diff --git a/test/trace/place-object-movie-move-name-5.swf.trace b/test/trace/place-object-movie-move-name-5.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-movie-move-name-5.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-movie-move-name-6.swf b/test/trace/place-object-movie-move-name-6.swf
new file mode 100644
index 0000000..caafb80
Binary files /dev/null and b/test/trace/place-object-movie-move-name-6.swf differ
diff --git a/test/trace/place-object-movie-move-name-6.swf.trace b/test/trace/place-object-movie-move-name-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-movie-move-name-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-movie-move-name-7.swf b/test/trace/place-object-movie-move-name-7.swf
new file mode 100644
index 0000000..f0488ad
Binary files /dev/null and b/test/trace/place-object-movie-move-name-7.swf differ
diff --git a/test/trace/place-object-movie-move-name-7.swf.trace b/test/trace/place-object-movie-move-name-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-movie-move-name-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-movie-name-5.swf b/test/trace/place-object-movie-name-5.swf
new file mode 100644
index 0000000..5895375
Binary files /dev/null and b/test/trace/place-object-movie-name-5.swf differ
diff --git a/test/trace/place-object-movie-name-5.swf.trace b/test/trace/place-object-movie-name-5.swf.trace
new file mode 100644
index 0000000..7c75dad
--- /dev/null
+++ b/test/trace/place-object-movie-name-5.swf.trace
@@ -0,0 +1,4 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instanceX
+2: load _level0.instanceX
diff --git a/test/trace/place-object-movie-name-6.swf b/test/trace/place-object-movie-name-6.swf
new file mode 100644
index 0000000..5d62095
Binary files /dev/null and b/test/trace/place-object-movie-name-6.swf differ
diff --git a/test/trace/place-object-movie-name-6.swf.trace b/test/trace/place-object-movie-name-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-movie-name-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-movie-name-7.swf b/test/trace/place-object-movie-name-7.swf
new file mode 100644
index 0000000..e47d336
Binary files /dev/null and b/test/trace/place-object-movie-name-7.swf differ
diff --git a/test/trace/place-object-movie-name-7.swf.trace b/test/trace/place-object-movie-name-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-movie-name-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-name-5.swf b/test/trace/place-object-name-5.swf
new file mode 100644
index 0000000..0ed9029
Binary files /dev/null and b/test/trace/place-object-name-5.swf differ
diff --git a/test/trace/place-object-name-5.swf.trace b/test/trace/place-object-name-5.swf.trace
new file mode 100644
index 0000000..7c75dad
--- /dev/null
+++ b/test/trace/place-object-name-5.swf.trace
@@ -0,0 +1,4 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instanceX
+2: load _level0.instanceX
diff --git a/test/trace/place-object-name-6.swf b/test/trace/place-object-name-6.swf
new file mode 100644
index 0000000..294ae18
Binary files /dev/null and b/test/trace/place-object-name-6.swf differ
diff --git a/test/trace/place-object-name-6.swf.trace b/test/trace/place-object-name-6.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-name-6.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-name-7.swf b/test/trace/place-object-name-7.swf
new file mode 100644
index 0000000..75def7c
Binary files /dev/null and b/test/trace/place-object-name-7.swf differ
diff --git a/test/trace/place-object-name-7.swf.trace b/test/trace/place-object-name-7.swf.trace
new file mode 100644
index 0000000..921d763
--- /dev/null
+++ b/test/trace/place-object-name-7.swf.trace
@@ -0,0 +1,2 @@
+1: init _level0.instance1
+1: load _level0.instance1
diff --git a/test/trace/place-object-remove-5.swf b/test/trace/place-object-remove-5.swf
new file mode 100644
index 0000000..1cc2bc2
Binary files /dev/null and b/test/trace/place-object-remove-5.swf differ
diff --git a/test/trace/place-object-remove-5.swf.trace b/test/trace/place-object-remove-5.swf.trace
new file mode 100644
index 0000000..6e3b309
--- /dev/null
+++ b/test/trace/place-object-remove-5.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instance2
+2: unload _level0.instance1
+2: load _level0.instance2
diff --git a/test/trace/place-object-remove-6.swf b/test/trace/place-object-remove-6.swf
new file mode 100644
index 0000000..0152164
Binary files /dev/null and b/test/trace/place-object-remove-6.swf differ
diff --git a/test/trace/place-object-remove-6.swf.trace b/test/trace/place-object-remove-6.swf.trace
new file mode 100644
index 0000000..6e3b309
--- /dev/null
+++ b/test/trace/place-object-remove-6.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instance2
+2: unload _level0.instance1
+2: load _level0.instance2
diff --git a/test/trace/place-object-remove-7.swf b/test/trace/place-object-remove-7.swf
new file mode 100644
index 0000000..a514cdb
Binary files /dev/null and b/test/trace/place-object-remove-7.swf differ
diff --git a/test/trace/place-object-remove-7.swf.trace b/test/trace/place-object-remove-7.swf.trace
new file mode 100644
index 0000000..6e3b309
--- /dev/null
+++ b/test/trace/place-object-remove-7.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instance2
+2: unload _level0.instance1
+2: load _level0.instance2
diff --git a/test/trace/place-object-remove-button-5.swf b/test/trace/place-object-remove-button-5.swf
new file mode 100644
index 0000000..dbf925a
Binary files /dev/null and b/test/trace/place-object-remove-button-5.swf differ
diff --git a/test/trace/place-object-remove-button-5.swf.trace b/test/trace/place-object-remove-button-5.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-button-6.swf b/test/trace/place-object-remove-button-6.swf
new file mode 100644
index 0000000..c346f85
Binary files /dev/null and b/test/trace/place-object-remove-button-6.swf differ
diff --git a/test/trace/place-object-remove-button-6.swf.trace b/test/trace/place-object-remove-button-6.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-button-7.swf b/test/trace/place-object-remove-button-7.swf
new file mode 100644
index 0000000..d0c6e24
Binary files /dev/null and b/test/trace/place-object-remove-button-7.swf differ
diff --git a/test/trace/place-object-remove-button-7.swf.trace b/test/trace/place-object-remove-button-7.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-button-move-5.swf b/test/trace/place-object-remove-button-move-5.swf
new file mode 100644
index 0000000..761fefa
Binary files /dev/null and b/test/trace/place-object-remove-button-move-5.swf differ
diff --git a/test/trace/place-object-remove-button-move-5.swf.trace b/test/trace/place-object-remove-button-move-5.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-move-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-button-move-6.swf b/test/trace/place-object-remove-button-move-6.swf
new file mode 100644
index 0000000..2e1b287
Binary files /dev/null and b/test/trace/place-object-remove-button-move-6.swf differ
diff --git a/test/trace/place-object-remove-button-move-6.swf.trace b/test/trace/place-object-remove-button-move-6.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-move-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-button-move-7.swf b/test/trace/place-object-remove-button-move-7.swf
new file mode 100644
index 0000000..4d7d7e2
Binary files /dev/null and b/test/trace/place-object-remove-button-move-7.swf differ
diff --git a/test/trace/place-object-remove-button-move-7.swf.trace b/test/trace/place-object-remove-button-move-7.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-move-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-button-move-name-5.swf b/test/trace/place-object-remove-button-move-name-5.swf
new file mode 100644
index 0000000..7d77d25
Binary files /dev/null and b/test/trace/place-object-remove-button-move-name-5.swf differ
diff --git a/test/trace/place-object-remove-button-move-name-5.swf.trace b/test/trace/place-object-remove-button-move-name-5.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-move-name-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-button-move-name-6.swf b/test/trace/place-object-remove-button-move-name-6.swf
new file mode 100644
index 0000000..4105e90
Binary files /dev/null and b/test/trace/place-object-remove-button-move-name-6.swf differ
diff --git a/test/trace/place-object-remove-button-move-name-6.swf.trace b/test/trace/place-object-remove-button-move-name-6.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-move-name-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-button-move-name-7.swf b/test/trace/place-object-remove-button-move-name-7.swf
new file mode 100644
index 0000000..40c5825
Binary files /dev/null and b/test/trace/place-object-remove-button-move-name-7.swf differ
diff --git a/test/trace/place-object-remove-button-move-name-7.swf.trace b/test/trace/place-object-remove-button-move-name-7.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-move-name-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-button-name-5.swf b/test/trace/place-object-remove-button-name-5.swf
new file mode 100644
index 0000000..7d47b4e
Binary files /dev/null and b/test/trace/place-object-remove-button-name-5.swf differ
diff --git a/test/trace/place-object-remove-button-name-5.swf.trace b/test/trace/place-object-remove-button-name-5.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-name-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-button-name-6.swf b/test/trace/place-object-remove-button-name-6.swf
new file mode 100644
index 0000000..b8d453c
Binary files /dev/null and b/test/trace/place-object-remove-button-name-6.swf differ
diff --git a/test/trace/place-object-remove-button-name-6.swf.trace b/test/trace/place-object-remove-button-name-6.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-name-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-button-name-7.swf b/test/trace/place-object-remove-button-name-7.swf
new file mode 100644
index 0000000..54abd2d
Binary files /dev/null and b/test/trace/place-object-remove-button-name-7.swf differ
diff --git a/test/trace/place-object-remove-button-name-7.swf.trace b/test/trace/place-object-remove-button-name-7.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-button-name-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-5.swf b/test/trace/place-object-remove-char-5.swf
new file mode 100644
index 0000000..8eb65d8
Binary files /dev/null and b/test/trace/place-object-remove-char-5.swf differ
diff --git a/test/trace/place-object-remove-char-5.swf.trace b/test/trace/place-object-remove-char-5.swf.trace
new file mode 100644
index 0000000..5e951a6
--- /dev/null
+++ b/test/trace/place-object-remove-char-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+1: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-6.swf b/test/trace/place-object-remove-char-6.swf
new file mode 100644
index 0000000..0f34afa
Binary files /dev/null and b/test/trace/place-object-remove-char-6.swf differ
diff --git a/test/trace/place-object-remove-char-6.swf.trace b/test/trace/place-object-remove-char-6.swf.trace
new file mode 100644
index 0000000..5e951a6
--- /dev/null
+++ b/test/trace/place-object-remove-char-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+1: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-7.swf b/test/trace/place-object-remove-char-7.swf
new file mode 100644
index 0000000..2d07f31
Binary files /dev/null and b/test/trace/place-object-remove-char-7.swf differ
diff --git a/test/trace/place-object-remove-char-7.swf.trace b/test/trace/place-object-remove-char-7.swf.trace
new file mode 100644
index 0000000..5e951a6
--- /dev/null
+++ b/test/trace/place-object-remove-char-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+1: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-move-5.swf b/test/trace/place-object-remove-char-move-5.swf
new file mode 100644
index 0000000..e2a089d
Binary files /dev/null and b/test/trace/place-object-remove-char-move-5.swf differ
diff --git a/test/trace/place-object-remove-char-move-5.swf.trace b/test/trace/place-object-remove-char-move-5.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-char-move-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-move-6.swf b/test/trace/place-object-remove-char-move-6.swf
new file mode 100644
index 0000000..b4e1864
Binary files /dev/null and b/test/trace/place-object-remove-char-move-6.swf differ
diff --git a/test/trace/place-object-remove-char-move-6.swf.trace b/test/trace/place-object-remove-char-move-6.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-char-move-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-move-7.swf b/test/trace/place-object-remove-char-move-7.swf
new file mode 100644
index 0000000..0aaa5d5
Binary files /dev/null and b/test/trace/place-object-remove-char-move-7.swf differ
diff --git a/test/trace/place-object-remove-char-move-7.swf.trace b/test/trace/place-object-remove-char-move-7.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-char-move-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-move-name-5.swf b/test/trace/place-object-remove-char-move-name-5.swf
new file mode 100644
index 0000000..b95a8f6
Binary files /dev/null and b/test/trace/place-object-remove-char-move-name-5.swf differ
diff --git a/test/trace/place-object-remove-char-move-name-5.swf.trace b/test/trace/place-object-remove-char-move-name-5.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-char-move-name-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-move-name-6.swf b/test/trace/place-object-remove-char-move-name-6.swf
new file mode 100644
index 0000000..bb2898c
Binary files /dev/null and b/test/trace/place-object-remove-char-move-name-6.swf differ
diff --git a/test/trace/place-object-remove-char-move-name-6.swf.trace b/test/trace/place-object-remove-char-move-name-6.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-char-move-name-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-move-name-7.swf b/test/trace/place-object-remove-char-move-name-7.swf
new file mode 100644
index 0000000..6f634d3
Binary files /dev/null and b/test/trace/place-object-remove-char-move-name-7.swf differ
diff --git a/test/trace/place-object-remove-char-move-name-7.swf.trace b/test/trace/place-object-remove-char-move-name-7.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-char-move-name-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-name-5.swf b/test/trace/place-object-remove-char-name-5.swf
new file mode 100644
index 0000000..9e56293
Binary files /dev/null and b/test/trace/place-object-remove-char-name-5.swf differ
diff --git a/test/trace/place-object-remove-char-name-5.swf.trace b/test/trace/place-object-remove-char-name-5.swf.trace
new file mode 100644
index 0000000..5e951a6
--- /dev/null
+++ b/test/trace/place-object-remove-char-name-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+1: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-name-6.swf b/test/trace/place-object-remove-char-name-6.swf
new file mode 100644
index 0000000..f44a6fa
Binary files /dev/null and b/test/trace/place-object-remove-char-name-6.swf differ
diff --git a/test/trace/place-object-remove-char-name-6.swf.trace b/test/trace/place-object-remove-char-name-6.swf.trace
new file mode 100644
index 0000000..5e951a6
--- /dev/null
+++ b/test/trace/place-object-remove-char-name-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+1: unload _level0.instance1
diff --git a/test/trace/place-object-remove-char-name-7.swf b/test/trace/place-object-remove-char-name-7.swf
new file mode 100644
index 0000000..10a0758
Binary files /dev/null and b/test/trace/place-object-remove-char-name-7.swf differ
diff --git a/test/trace/place-object-remove-char-name-7.swf.trace b/test/trace/place-object-remove-char-name-7.swf.trace
new file mode 100644
index 0000000..5e951a6
--- /dev/null
+++ b/test/trace/place-object-remove-char-name-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+1: unload _level0.instance1
diff --git a/test/trace/place-object-remove-move-5.swf b/test/trace/place-object-remove-move-5.swf
new file mode 100644
index 0000000..19d1c1c
Binary files /dev/null and b/test/trace/place-object-remove-move-5.swf differ
diff --git a/test/trace/place-object-remove-move-5.swf.trace b/test/trace/place-object-remove-move-5.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-move-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-move-6.swf b/test/trace/place-object-remove-move-6.swf
new file mode 100644
index 0000000..a60d5ed
Binary files /dev/null and b/test/trace/place-object-remove-move-6.swf differ
diff --git a/test/trace/place-object-remove-move-6.swf.trace b/test/trace/place-object-remove-move-6.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-move-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-move-7.swf b/test/trace/place-object-remove-move-7.swf
new file mode 100644
index 0000000..25350d6
Binary files /dev/null and b/test/trace/place-object-remove-move-7.swf differ
diff --git a/test/trace/place-object-remove-move-7.swf.trace b/test/trace/place-object-remove-move-7.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-move-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-move-name-5.swf b/test/trace/place-object-remove-move-name-5.swf
new file mode 100644
index 0000000..6bf7bb8
Binary files /dev/null and b/test/trace/place-object-remove-move-name-5.swf differ
diff --git a/test/trace/place-object-remove-move-name-5.swf.trace b/test/trace/place-object-remove-move-name-5.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-move-name-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-move-name-6.swf b/test/trace/place-object-remove-move-name-6.swf
new file mode 100644
index 0000000..58d2780
Binary files /dev/null and b/test/trace/place-object-remove-move-name-6.swf differ
diff --git a/test/trace/place-object-remove-move-name-6.swf.trace b/test/trace/place-object-remove-move-name-6.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-move-name-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-move-name-7.swf b/test/trace/place-object-remove-move-name-7.swf
new file mode 100644
index 0000000..e16c09c
Binary files /dev/null and b/test/trace/place-object-remove-move-name-7.swf differ
diff --git a/test/trace/place-object-remove-move-name-7.swf.trace b/test/trace/place-object-remove-move-name-7.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-move-name-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-movie-5.swf b/test/trace/place-object-remove-movie-5.swf
new file mode 100644
index 0000000..d030aa3
Binary files /dev/null and b/test/trace/place-object-remove-movie-5.swf differ
diff --git a/test/trace/place-object-remove-movie-5.swf.trace b/test/trace/place-object-remove-movie-5.swf.trace
new file mode 100644
index 0000000..6e3b309
--- /dev/null
+++ b/test/trace/place-object-remove-movie-5.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instance2
+2: unload _level0.instance1
+2: load _level0.instance2
diff --git a/test/trace/place-object-remove-movie-6.swf b/test/trace/place-object-remove-movie-6.swf
new file mode 100644
index 0000000..eafc435
Binary files /dev/null and b/test/trace/place-object-remove-movie-6.swf differ
diff --git a/test/trace/place-object-remove-movie-6.swf.trace b/test/trace/place-object-remove-movie-6.swf.trace
new file mode 100644
index 0000000..6e3b309
--- /dev/null
+++ b/test/trace/place-object-remove-movie-6.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instance2
+2: unload _level0.instance1
+2: load _level0.instance2
diff --git a/test/trace/place-object-remove-movie-7.swf b/test/trace/place-object-remove-movie-7.swf
new file mode 100644
index 0000000..6832933
Binary files /dev/null and b/test/trace/place-object-remove-movie-7.swf differ
diff --git a/test/trace/place-object-remove-movie-7.swf.trace b/test/trace/place-object-remove-movie-7.swf.trace
new file mode 100644
index 0000000..6e3b309
--- /dev/null
+++ b/test/trace/place-object-remove-movie-7.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instance2
+2: unload _level0.instance1
+2: load _level0.instance2
diff --git a/test/trace/place-object-remove-movie-move-5.swf b/test/trace/place-object-remove-movie-move-5.swf
new file mode 100644
index 0000000..22778ed
Binary files /dev/null and b/test/trace/place-object-remove-movie-move-5.swf differ
diff --git a/test/trace/place-object-remove-movie-move-5.swf.trace b/test/trace/place-object-remove-movie-move-5.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-movie-move-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-movie-move-6.swf b/test/trace/place-object-remove-movie-move-6.swf
new file mode 100644
index 0000000..dcde6ba
Binary files /dev/null and b/test/trace/place-object-remove-movie-move-6.swf differ
diff --git a/test/trace/place-object-remove-movie-move-6.swf.trace b/test/trace/place-object-remove-movie-move-6.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-movie-move-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-movie-move-7.swf b/test/trace/place-object-remove-movie-move-7.swf
new file mode 100644
index 0000000..ea4ee9c
Binary files /dev/null and b/test/trace/place-object-remove-movie-move-7.swf differ
diff --git a/test/trace/place-object-remove-movie-move-7.swf.trace b/test/trace/place-object-remove-movie-move-7.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-movie-move-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-movie-move-name-5.swf b/test/trace/place-object-remove-movie-move-name-5.swf
new file mode 100644
index 0000000..612f9f8
Binary files /dev/null and b/test/trace/place-object-remove-movie-move-name-5.swf differ
diff --git a/test/trace/place-object-remove-movie-move-name-5.swf.trace b/test/trace/place-object-remove-movie-move-name-5.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-movie-move-name-5.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-movie-move-name-6.swf b/test/trace/place-object-remove-movie-move-name-6.swf
new file mode 100644
index 0000000..81c327f
Binary files /dev/null and b/test/trace/place-object-remove-movie-move-name-6.swf differ
diff --git a/test/trace/place-object-remove-movie-move-name-6.swf.trace b/test/trace/place-object-remove-movie-move-name-6.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-movie-move-name-6.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-movie-move-name-7.swf b/test/trace/place-object-remove-movie-move-name-7.swf
new file mode 100644
index 0000000..6b196f9
Binary files /dev/null and b/test/trace/place-object-remove-movie-move-name-7.swf differ
diff --git a/test/trace/place-object-remove-movie-move-name-7.swf.trace b/test/trace/place-object-remove-movie-move-name-7.swf.trace
new file mode 100644
index 0000000..8872c3b
--- /dev/null
+++ b/test/trace/place-object-remove-movie-move-name-7.swf.trace
@@ -0,0 +1,3 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: unload _level0.instance1
diff --git a/test/trace/place-object-remove-movie-name-5.swf b/test/trace/place-object-remove-movie-name-5.swf
new file mode 100644
index 0000000..b747d38
Binary files /dev/null and b/test/trace/place-object-remove-movie-name-5.swf differ
diff --git a/test/trace/place-object-remove-movie-name-5.swf.trace b/test/trace/place-object-remove-movie-name-5.swf.trace
new file mode 100644
index 0000000..0ef9e80
--- /dev/null
+++ b/test/trace/place-object-remove-movie-name-5.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instanceX
+2: unload _level0.instance1
+2: load _level0.instanceX
diff --git a/test/trace/place-object-remove-movie-name-6.swf b/test/trace/place-object-remove-movie-name-6.swf
new file mode 100644
index 0000000..f78a639
Binary files /dev/null and b/test/trace/place-object-remove-movie-name-6.swf differ
diff --git a/test/trace/place-object-remove-movie-name-6.swf.trace b/test/trace/place-object-remove-movie-name-6.swf.trace
new file mode 100644
index 0000000..0ef9e80
--- /dev/null
+++ b/test/trace/place-object-remove-movie-name-6.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instanceX
+2: unload _level0.instance1
+2: load _level0.instanceX
diff --git a/test/trace/place-object-remove-movie-name-7.swf b/test/trace/place-object-remove-movie-name-7.swf
new file mode 100644
index 0000000..1ec305c
Binary files /dev/null and b/test/trace/place-object-remove-movie-name-7.swf differ
diff --git a/test/trace/place-object-remove-movie-name-7.swf.trace b/test/trace/place-object-remove-movie-name-7.swf.trace
new file mode 100644
index 0000000..0ef9e80
--- /dev/null
+++ b/test/trace/place-object-remove-movie-name-7.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instanceX
+2: unload _level0.instance1
+2: load _level0.instanceX
diff --git a/test/trace/place-object-remove-name-5.swf b/test/trace/place-object-remove-name-5.swf
new file mode 100644
index 0000000..9ba25c4
Binary files /dev/null and b/test/trace/place-object-remove-name-5.swf differ
diff --git a/test/trace/place-object-remove-name-5.swf.trace b/test/trace/place-object-remove-name-5.swf.trace
new file mode 100644
index 0000000..0ef9e80
--- /dev/null
+++ b/test/trace/place-object-remove-name-5.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instanceX
+2: unload _level0.instance1
+2: load _level0.instanceX
diff --git a/test/trace/place-object-remove-name-6.swf b/test/trace/place-object-remove-name-6.swf
new file mode 100644
index 0000000..9e9466e
Binary files /dev/null and b/test/trace/place-object-remove-name-6.swf differ
diff --git a/test/trace/place-object-remove-name-6.swf.trace b/test/trace/place-object-remove-name-6.swf.trace
new file mode 100644
index 0000000..0ef9e80
--- /dev/null
+++ b/test/trace/place-object-remove-name-6.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instanceX
+2: unload _level0.instance1
+2: load _level0.instanceX
diff --git a/test/trace/place-object-remove-name-7.swf b/test/trace/place-object-remove-name-7.swf
new file mode 100644
index 0000000..beef86c
Binary files /dev/null and b/test/trace/place-object-remove-name-7.swf differ
diff --git a/test/trace/place-object-remove-name-7.swf.trace b/test/trace/place-object-remove-name-7.swf.trace
new file mode 100644
index 0000000..0ef9e80
--- /dev/null
+++ b/test/trace/place-object-remove-name-7.swf.trace
@@ -0,0 +1,5 @@
+1: init _level0.instance1
+1: load _level0.instance1
+2: init _level0.instanceX
+2: unload _level0.instance1
+2: load _level0.instanceX
diff --git a/test/trace/place-object.c b/test/trace/place-object.c
new file mode 100644
index 0000000..2ee1be6
--- /dev/null
+++ b/test/trace/place-object.c
@@ -0,0 +1,171 @@
+/* gcc `pkg-config --libs --cflags libming glib-2.0` place-object.c -o place-object && ./place-object
+ */
+
+#include <ming.h>
+#include <glib.h>
+
+/* This is a rather complex test that outputs heaps of simple files.
+ * What it does is create this movie:
+ * Frame 1: PlaceObject
+ * (Frame 2: RemoveObject)
+ * Frame 2: PlaceObject
+ * Frame 3: quit
+ * The enum below changes properties of the second PlaceObject call.
+ *
+ * Note running this test requires a patched version of libmong 0.4, that adds
+ * SWFDisplayItem_setMove() and allows calling SWFMovie_add() with a NULL
+ * character.
+ */
+enum {
+ /* mark the PlaceObject as a move */
+ MODIFY_MOVE = (1 << 0),
+ /* The next two control what character is set in the second PlaceObject:
+ * HAS_CHAR & DIFFERENT_CHAR: a Button
+ * DIFFERENT_CHAR: another MovieClip
+ * HAS_CHAR: the same MovieClip as in the first PlaceObject
+ * none: no character
+ */
+ MODIFY_HAS_CHAR = (1 << 1),
+ MODIFY_DIFFERENT_CHAR = (1 << 2),
+ /* the transform is different */
+ MODIFY_TRANSFORM = (1 << 3),
+ /* the color transform is different */
+ MODIFY_CTRANS = (1 << 4),
+ /* the ratio has changed */
+ MODIFY_RATIO = (1 << 5),
+ /* the second PlaceObject has a name */
+ MODIFY_NAME = (1 << 6),
+ /* the clip depth has changed */
+ MODIFY_CLIP_DEPTH = (1 << 7),
+ /* a Remove tag is added directly before the second PlaceObject */
+ MODIFY_REMOVE = (1 << 8),
+ /* add here */
+ MODIFY_MAX = (1 << 9)
+};
+
+static void
+modify_item (SWFDisplayItem item, GString *name, guint mod)
+{
+ SWFDisplayItem_setDepth (item, 1);
+
+ if (mod & MODIFY_MOVE) {
+ if (name)
+ g_string_append (name, "-move");
+ else
+ SWFDisplayItem_setMove (item);
+ }
+ if (mod & MODIFY_TRANSFORM) {
+ if (name)
+ g_string_append (name, "-transform");
+ else
+ SWFDisplayItem_moveTo (item, 10, 0);
+ }
+ if (mod & MODIFY_CTRANS) {
+ if (name)
+ g_string_append (name, "-ctrans");
+ else
+ SWFDisplayItem_setColorAdd (item, 10, 10, 10, 10);
+ }
+ if (mod & MODIFY_RATIO) {
+ if (name)
+ g_string_append (name, "-ratio");
+ else
+ SWFDisplayItem_setRatio (item, 0.5);
+ }
+ if (mod & MODIFY_NAME) {
+ if (name)
+ g_string_append (name, "-name");
+ else
+ SWFDisplayItem_setName (item, "instanceX");
+ }
+ if (mod & MODIFY_CLIP_DEPTH) {
+ if (name)
+ g_string_append (name, "-clip");
+ else
+ SWFDisplayItem_setMaskLevel (item, 5);
+ }
+ SWFDisplayItem_addAction (item, newSWFAction ("trace (_root._currentframe + \": init \" + this);"), SWFACTION_INIT);
+ SWFDisplayItem_addAction (item, newSWFAction ("trace (_root._currentframe + \": load \" + this);"), SWFACTION_ONLOAD);
+ SWFDisplayItem_addAction (item, newSWFAction ("trace (_root._currentframe + \": unload \" + this);"), SWFACTION_UNLOAD);
+}
+
+static char *
+modify_placement (SWFMovie movie, guint mod)
+{
+ GString *name;
+ SWFDisplayItem item;
+ SWFBlock clip1, clip2;
+
+ name = g_string_new ("place-object");
+ if (mod & MODIFY_REMOVE)
+ g_string_append (name, "-remove");
+ clip1 = (SWFBlock) newSWFMovieClip ();
+ if (mod & MODIFY_DIFFERENT_CHAR) {
+ if (mod & MODIFY_HAS_CHAR) {
+ clip2 = (SWFBlock) newSWFButton ();
+ g_string_append (name, "-button");
+ } else {
+ clip2 = (SWFBlock) newSWFMovieClip ();
+ g_string_append (name, "-movie");
+ }
+ } else if (mod & MODIFY_HAS_CHAR) {
+ clip2 = NULL;
+ g_string_append (name, "-char");
+ } else {
+ clip2 = (SWFBlock) clip1;
+ }
+
+ /* FIXME: I want the option to set a replace flag here */
+ item = SWFMovie_add (movie, clip1);
+ modify_item (item, name, mod);
+ SWFMovie_nextFrame (movie);
+
+ if (mod & MODIFY_REMOVE) {
+ SWFDisplayItem_remove (item);
+ }
+ item = SWFMovie_add (movie, clip2);
+ modify_item (item, NULL, mod);
+ return g_string_free (name, FALSE);
+}
+
+static void
+do_movie (int version)
+{
+ SWFMovie movie;
+ char *name, *real_name;
+ guint i;
+
+ for (i = 0; i < MODIFY_MAX; i++) {
+ movie = newSWFMovieWithVersion (version);
+ movie = newSWFMovie();
+ SWFMovie_setRate (movie, 256);
+ SWFMovie_setDimension (movie, 200, 150);
+
+ name = modify_placement (movie, i);
+ SWFMovie_nextFrame (movie);
+
+ SWFMovie_add (movie, (SWFBlock) newSWFAction (""
+ "loadMovie (\"FSCommand:quit\", \"\");"
+ ));
+ SWFMovie_nextFrame (movie);
+
+ real_name = g_strdup_printf ("%s-%d.swf", name, version);
+ g_free (name);
+ SWFMovie_save (movie, real_name);
+ g_free (real_name);
+ }
+}
+
+int
+main (int argc, char **argv)
+{
+ int i;
+
+ if (Ming_init ())
+ return 1;
+
+ for (i = 5; i < 8; i++)
+ do_movie (i);
+
+ return 0;
+}
More information about the Swfdec
mailing list