[Swfdec-commits] Branch 'test' - 20 commits - swfdec/compiler.c test/Makefile.am test/swfdec_test_function.c test/swfdec_test_http_request.c test/swfdec_test_http_request.h test/swfdec_test_http_server.c test/swfdec_test_http_server.h test/swfdec_test_initialize.as test/swfdec_test_initialize.h test/swfdec_test_socket.c

Pekka Lampila medar at kemper.freedesktop.org
Fri Feb 1 16:52:10 PST 2008


 swfdec/compiler.c               |   15 +
 test/Makefile.am                |    4 
 test/swfdec_test_function.c     |    2 
 test/swfdec_test_http_request.c |  347 ++++++++++++++++++++++++++++++++++++++++
 test/swfdec_test_http_request.h |   71 ++++++++
 test/swfdec_test_http_server.c  |  215 ++++++++++++++++++++++++
 test/swfdec_test_http_server.h  |   63 +++++++
 test/swfdec_test_initialize.as  |   17 +
 test/swfdec_test_initialize.h   |  169 ++++++++++++-------
 test/swfdec_test_socket.c       |    2 
 10 files changed, 842 insertions(+), 63 deletions(-)

New commits:
commit 87697834123d26e82125e720502ba1b4a0ee9659
Merge: bf6e150... c7a4757...
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Sat Feb 2 02:46:44 2008 +0200

    Merge branch 'test' of ssh://medar@git.freedesktop.org/git/swfdec/swfdec into httptest

commit bf6e1505a60382c0478a7ab3e964128437ba3933
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 18:16:18 2008 +0200

    Add port property for HTTPServer

diff --git a/test/swfdec_test_http_server.c b/test/swfdec_test_http_server.c
index c30f0a0..27960bd 100644
--- a/test/swfdec_test_http_server.c
+++ b/test/swfdec_test_http_server.c
@@ -153,6 +153,18 @@ swfdec_test_http_server_init (SwfdecTestHTTPServer *server)
 
 /*** AS CODE ***/
 
+SWFDEC_TEST_FUNCTION ("HTTPServer_get_port", swfdec_test_http_server_get_port, 0)
+void
+swfdec_test_http_server_get_port (SwfdecAsContext *cx, SwfdecAsObject *object,
+    guint argc, SwfdecAsValue *argv, SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPServer *server;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &server, "");
+
+  SWFDEC_AS_VALUE_SET_INT (retval, server->port);
+}
+
 SWFDEC_TEST_FUNCTION ("HTTPServer_getRequest", swfdec_test_http_server_get_request, 0)
 void
 swfdec_test_http_server_get_request (SwfdecAsContext *cx,
diff --git a/test/swfdec_test_initialize.as b/test/swfdec_test_initialize.as
index 018c56c..7b10699 100644
--- a/test/swfdec_test_initialize.as
+++ b/test/swfdec_test_initialize.as
@@ -30,6 +30,7 @@ Image.prototype.save = Native.Image_save;
 HTTPServer = Native.HTTPServer;
 HTTPServer.prototype = {};
 HTTPServer.prototype.getRequest = Native.HTTPServer_getRequest;
+HTTPServer.prototype.addProperty ("port", Native.HTTPServer_get_port, null);
 
 HTTPRequest = new Object ();
 HTTPRequest.prototype = {};
diff --git a/test/swfdec_test_initialize.h b/test/swfdec_test_initialize.h
index e0ebfd3..3bbea82 100644
--- a/test/swfdec_test_initialize.h
+++ b/test/swfdec_test_initialize.h
@@ -2,7 +2,7 @@
 
 /* compiled from swfdec_test_initialize.as */
 static const unsigned char swfdec_test_initialize[] = {
-  0x88, 0xEE, 0x02, 0x3F,  0x00, 0x42, 0x75, 0x66,  0x66, 0x65, 0x72, 0x00,  0x4E, 0x61, 0x74, 0x69,
+  0x88, 0x07, 0x03, 0x41,  0x00, 0x42, 0x75, 0x66,  0x66, 0x65, 0x72, 0x00,  0x4E, 0x61, 0x74, 0x69,
   0x76, 0x65, 0x00, 0x6C,  0x6F, 0x61, 0x64, 0x00,  0x42, 0x75, 0x66, 0x66,  0x65, 0x72, 0x5F, 0x6C,
   0x6F, 0x61, 0x64, 0x00,  0x70, 0x72, 0x6F, 0x74,  0x6F, 0x74, 0x79, 0x70,  0x65, 0x00, 0x64, 0x69,
   0x66, 0x66, 0x00, 0x42,  0x75, 0x66, 0x66, 0x65,  0x72, 0x5F, 0x64, 0x69,  0x66, 0x66, 0x00, 0x49,
@@ -11,109 +11,113 @@ static const unsigned char swfdec_test_initialize[] = {
   0x49, 0x6D, 0x61, 0x67,  0x65, 0x5F, 0x73, 0x61,  0x76, 0x65, 0x00, 0x48,  0x54, 0x54, 0x50, 0x53,
   0x65, 0x72, 0x76, 0x65,  0x72, 0x00, 0x67, 0x65,  0x74, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
   0x00, 0x48, 0x54, 0x54,  0x50, 0x53, 0x65, 0x72,  0x76, 0x65, 0x72, 0x5F,  0x67, 0x65, 0x74, 0x52,
-  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,
-  0x73, 0x74, 0x00, 0x4F,  0x62, 0x6A, 0x65, 0x63,  0x74, 0x00, 0x73, 0x65,  0x72, 0x76, 0x65, 0x72,
+  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x00, 0x70,  0x6F, 0x72, 0x74, 0x00,  0x48, 0x54, 0x54, 0x50,
+  0x53, 0x65, 0x72, 0x76,  0x65, 0x72, 0x5F, 0x67,  0x65, 0x74, 0x5F, 0x70,  0x6F, 0x72, 0x74, 0x00,
+  0x61, 0x64, 0x64, 0x50,  0x72, 0x6F, 0x70, 0x65,  0x72, 0x74, 0x79, 0x00,  0x48, 0x54, 0x54, 0x50,
+  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x00,  0x4F, 0x62, 0x6A, 0x65,  0x63, 0x74, 0x00, 0x73,
+  0x65, 0x72, 0x76, 0x65,  0x72, 0x00, 0x48, 0x54,  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,
+  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x73, 0x65,  0x72, 0x76, 0x65, 0x72,  0x00, 0x75, 0x72, 0x6C,
   0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,
-  0x5F, 0x73, 0x65, 0x72,  0x76, 0x65, 0x72, 0x00,  0x61, 0x64, 0x64, 0x50,  0x72, 0x6F, 0x70, 0x65,
-  0x72, 0x74, 0x79, 0x00,  0x75, 0x72, 0x6C, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,
-  0x65, 0x73, 0x74, 0x5F,  0x67, 0x65, 0x74, 0x5F,  0x75, 0x72, 0x6C, 0x00,  0x70, 0x61, 0x74, 0x68,
-  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,
-  0x5F, 0x70, 0x61, 0x74,  0x68, 0x00, 0x68, 0x65,  0x61, 0x64, 0x65, 0x72,  0x73, 0x00, 0x48, 0x54,
-  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x68, 0x65,
-  0x61, 0x64, 0x65, 0x72,  0x73, 0x00, 0x63, 0x6F,  0x6E, 0x74, 0x65, 0x6E,  0x74, 0x54, 0x79, 0x70,
-  0x65, 0x00, 0x48, 0x54,  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,
-  0x74, 0x5F, 0x63, 0x6F,  0x6E, 0x74, 0x65, 0x6E,  0x74, 0x54, 0x79, 0x70,  0x65, 0x00, 0x48, 0x54,
-  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x73, 0x65,  0x74, 0x5F, 0x63, 0x6F,
-  0x6E, 0x74, 0x65, 0x6E,  0x74, 0x54, 0x79, 0x70,  0x65, 0x00, 0x73, 0x74,  0x61, 0x74, 0x75, 0x73,
-  0x43, 0x6F, 0x64, 0x65,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
-  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x73, 0x74, 0x61,  0x74, 0x75, 0x73, 0x43,  0x6F, 0x64, 0x65, 0x00,
-  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,  0x73, 0x65, 0x74, 0x5F,
-  0x73, 0x74, 0x61, 0x74,  0x75, 0x73, 0x43, 0x6F,  0x64, 0x65, 0x00, 0x74,  0x6F, 0x53, 0x74, 0x72,
-  0x69, 0x6E, 0x67, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,
-  0x74, 0x6F, 0x53, 0x74,  0x72, 0x69, 0x6E, 0x67,  0x00, 0x73, 0x65, 0x6E,  0x64, 0x00, 0x48, 0x54,
-  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x73, 0x65,  0x6E, 0x64, 0x00, 0x63,
-  0x6C, 0x6F, 0x73, 0x65,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
-  0x5F, 0x63, 0x6C, 0x6F,  0x73, 0x65, 0x00, 0x53,  0x6F, 0x63, 0x6B, 0x65,  0x74, 0x00, 0x70, 0x72,
-  0x6F, 0x63, 0x65, 0x73,  0x73, 0x00, 0x53, 0x6F,  0x63, 0x6B, 0x65, 0x74,  0x5F, 0x70, 0x72, 0x6F,
-  0x63, 0x65, 0x73, 0x73,  0x00, 0x54, 0x65, 0x73,  0x74, 0x00, 0x61, 0x64,  0x76, 0x61, 0x6E, 0x63,
-  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x61,  0x64, 0x76, 0x61, 0x6E,  0x63, 0x65, 0x00, 0x6D,
-  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x6D, 0x6F, 0x76,  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x6D,
-  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x6D, 0x6F, 0x76,  0x65, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
-  0x70, 0x72, 0x65, 0x73,  0x73, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x6D,  0x6F, 0x75, 0x73, 0x65,
-  0x5F, 0x70, 0x72, 0x65,  0x73, 0x73, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x72, 0x65, 0x6C,
-  0x65, 0x61, 0x73, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
-  0x72, 0x65, 0x6C, 0x65,  0x61, 0x73, 0x65, 0x00,  0x72, 0x65, 0x6E, 0x64,  0x65, 0x72, 0x00, 0x54,
-  0x65, 0x73, 0x74, 0x5F,  0x72, 0x65, 0x6E, 0x64,  0x65, 0x72, 0x00, 0x72,  0x65, 0x73, 0x65, 0x74,
-  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x72, 0x65,  0x73, 0x65, 0x74, 0x00,  0x72, 0x61, 0x74, 0x65,
-  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x72, 0x61,  0x74, 0x65, 0x00, 0x74,
-  0x72, 0x61, 0x63, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x74, 0x72,
-  0x61, 0x63, 0x65, 0x00,  0x70, 0x72, 0x69, 0x6E,  0x74, 0x00, 0x73, 0x00,  0x49, 0x4E, 0x46, 0x4F,
-  0x3A, 0x20, 0x00, 0x65,  0x72, 0x72, 0x6F, 0x72,  0x00, 0x45, 0x52, 0x52,  0x4F, 0x52, 0x3A, 0x20,
-  0x00, 0x96, 0x04, 0x00,  0x08, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x00, 0x4E, 0x1D,
-  0x96, 0x02, 0x00, 0x08,  0x00, 0x1C, 0x96, 0x04,  0x00, 0x08, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x03, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x00, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,
-  0x07, 0x00, 0x00, 0x00,  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x00,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x05,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x06,
-  0x4E, 0x4F, 0x96, 0x04,  0x00, 0x08, 0x07, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x07, 0x4E,
-  0x1D, 0x96, 0x02, 0x00,  0x08, 0x07, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,  0x07, 0x00, 0x00, 0x00,
-  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x07,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,
-  0x04, 0x00, 0x08, 0x08,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x09,  0x4E, 0x4F, 0x96, 0x02,
-  0x00, 0x08, 0x07, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x0A, 0x08,
-  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x0B, 0x4E,  0x4F, 0x96, 0x04, 0x00,  0x08, 0x0C, 0x08, 0x01,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x0C, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,  0x0C, 0x1C, 0x96, 0x07,
-  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x0C, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x0D, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x0E, 0x4E,  0x4F, 0x96, 0x09, 0x00,  0x08, 0x0F, 0x07, 0x00,  0x00, 0x00, 0x00, 0x08,
-  0x10, 0x40, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x07, 0x00,  0x08, 0x04, 0x07, 0x00,
+  0x5F, 0x75, 0x72, 0x6C,  0x00, 0x70, 0x61, 0x74,  0x68, 0x00, 0x48, 0x54,  0x54, 0x50, 0x52, 0x65,
+  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x70, 0x61,  0x74, 0x68, 0x00, 0x68,
+  0x65, 0x61, 0x64, 0x65,  0x72, 0x73, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,
+  0x73, 0x74, 0x5F, 0x67,  0x65, 0x74, 0x5F, 0x68,  0x65, 0x61, 0x64, 0x65,  0x72, 0x73, 0x00, 0x63,
+  0x6F, 0x6E, 0x74, 0x65,  0x6E, 0x74, 0x54, 0x79,  0x70, 0x65, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,
+  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x67,  0x65, 0x74, 0x5F, 0x63,  0x6F, 0x6E, 0x74, 0x65,
+  0x6E, 0x74, 0x54, 0x79,  0x70, 0x65, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,
+  0x73, 0x74, 0x5F, 0x73,  0x65, 0x74, 0x5F, 0x63,  0x6F, 0x6E, 0x74, 0x65,  0x6E, 0x74, 0x54, 0x79,
+  0x70, 0x65, 0x00, 0x73,  0x74, 0x61, 0x74, 0x75,  0x73, 0x43, 0x6F, 0x64,  0x65, 0x00, 0x48, 0x54,
+  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x73, 0x74,
+  0x61, 0x74, 0x75, 0x73,  0x43, 0x6F, 0x64, 0x65,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,
+  0x75, 0x65, 0x73, 0x74,  0x5F, 0x73, 0x65, 0x74,  0x5F, 0x73, 0x74, 0x61,  0x74, 0x75, 0x73, 0x43,
+  0x6F, 0x64, 0x65, 0x00,  0x74, 0x6F, 0x53, 0x74,  0x72, 0x69, 0x6E, 0x67,  0x00, 0x48, 0x54, 0x54,
+  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x74, 0x6F, 0x53,  0x74, 0x72, 0x69, 0x6E,
+  0x67, 0x00, 0x73, 0x65,  0x6E, 0x64, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,
+  0x73, 0x74, 0x5F, 0x73,  0x65, 0x6E, 0x64, 0x00,  0x63, 0x6C, 0x6F, 0x73,  0x65, 0x00, 0x48, 0x54,
+  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x63, 0x6C,  0x6F, 0x73, 0x65, 0x00,
+  0x53, 0x6F, 0x63, 0x6B,  0x65, 0x74, 0x00, 0x70,  0x72, 0x6F, 0x63, 0x65,  0x73, 0x73, 0x00, 0x53,
+  0x6F, 0x63, 0x6B, 0x65,  0x74, 0x5F, 0x70, 0x72,  0x6F, 0x63, 0x65, 0x73,  0x73, 0x00, 0x54, 0x65,
+  0x73, 0x74, 0x00, 0x61,  0x64, 0x76, 0x61, 0x6E,  0x63, 0x65, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,
+  0x61, 0x64, 0x76, 0x61,  0x6E, 0x63, 0x65, 0x00,  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x6D, 0x6F,
+  0x76, 0x65, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x6D, 0x6F,
+  0x76, 0x65, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x70, 0x72, 0x65,  0x73, 0x73, 0x00, 0x54,
+  0x65, 0x73, 0x74, 0x5F,  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x70, 0x72,  0x65, 0x73, 0x73, 0x00,
+  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x72, 0x65,  0x6C, 0x65, 0x61, 0x73,  0x65, 0x00, 0x54, 0x65,
+  0x73, 0x74, 0x5F, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x72, 0x65, 0x6C,  0x65, 0x61, 0x73, 0x65,
+  0x00, 0x72, 0x65, 0x6E,  0x64, 0x65, 0x72, 0x00,  0x54, 0x65, 0x73, 0x74,  0x5F, 0x72, 0x65, 0x6E,
+  0x64, 0x65, 0x72, 0x00,  0x72, 0x65, 0x73, 0x65,  0x74, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x72,
+  0x65, 0x73, 0x65, 0x74,  0x00, 0x72, 0x61, 0x74,  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x67,
+  0x65, 0x74, 0x5F, 0x72,  0x61, 0x74, 0x65, 0x00,  0x74, 0x72, 0x61, 0x63,  0x65, 0x00, 0x54, 0x65,
+  0x73, 0x74, 0x5F, 0x67,  0x65, 0x74, 0x5F, 0x74,  0x72, 0x61, 0x63, 0x65,  0x00, 0x70, 0x72, 0x69,
+  0x6E, 0x74, 0x00, 0x73,  0x00, 0x49, 0x4E, 0x46,  0x4F, 0x3A, 0x20, 0x00,  0x65, 0x72, 0x72, 0x6F,
+  0x72, 0x00, 0x45, 0x52,  0x52, 0x4F, 0x52, 0x3A,  0x20, 0x00, 0x96, 0x04,  0x00, 0x08, 0x00, 0x08,
+  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x00, 0x4E,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x00, 0x1C, 0x96,
+  0x04, 0x00, 0x08, 0x02,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x03,  0x4E, 0x4F, 0x96, 0x02,
+  0x00, 0x08, 0x00, 0x1C,  0x96, 0x07, 0x00, 0x08,  0x04, 0x07, 0x00, 0x00,  0x00, 0x00, 0x43, 0x4F,
+  0x96, 0x02, 0x00, 0x08,  0x00, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,
+  0x05, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x06, 0x4E, 0x4F, 0x96,  0x04, 0x00, 0x08, 0x07,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x07,  0x4E, 0x1D, 0x96, 0x02,  0x00, 0x08, 0x07, 0x1C,
+  0x96, 0x07, 0x00, 0x08,  0x04, 0x07, 0x00, 0x00,  0x00, 0x00, 0x43, 0x4F,  0x96, 0x02, 0x00, 0x08,
+  0x07, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x08, 0x08, 0x01, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x09, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x07,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x0A,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x0B,
+  0x4E, 0x4F, 0x96, 0x04,  0x00, 0x08, 0x0C, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x0C, 0x4E,
+  0x1D, 0x96, 0x02, 0x00,  0x08, 0x0C, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,  0x07, 0x00, 0x00, 0x00,
+  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0C,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,
+  0x04, 0x00, 0x08, 0x0D,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x0E,  0x4E, 0x4F, 0x96, 0x03,
+  0x00, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x10, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x0F,
+  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0C, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x02,
+  0x00, 0x08, 0x11, 0x52,  0x17, 0x96, 0x09, 0x00,  0x08, 0x12, 0x07, 0x00,  0x00, 0x00, 0x00, 0x08,
+  0x13, 0x40, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x12,  0x1C, 0x96, 0x07, 0x00,  0x08, 0x04, 0x07, 0x00,
   0x00, 0x00, 0x00, 0x43,  0x4F, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x12, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x11, 0x07,  0x03, 0x00, 0x00, 0x00,  0x08, 0x0F, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x13, 0x52, 0x17,  0x96, 0x03, 0x00, 0x02,
-  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x15,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x14, 0x07, 0x03,
-  0x00, 0x00, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,
-  0x13, 0x52, 0x17, 0x96,  0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x17, 0x4E,
-  0x96, 0x09, 0x00, 0x08,  0x16, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x04, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x13,  0x52, 0x17, 0x96, 0x03,  0x00, 0x02, 0x08, 0x01,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x19, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x18,  0x07, 0x03, 0x00, 0x00,
-  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x13, 0x52,
-  0x17, 0x96, 0x02, 0x00,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1C,  0x4E, 0x96, 0x02, 0x00,
-  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1B,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x1A, 0x07, 0x03,
-  0x00, 0x00, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,
-  0x13, 0x52, 0x17, 0x96,  0x02, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x1F, 0x4E, 0x96,
-  0x02, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x1E, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x1D,
-  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x02,
-  0x00, 0x08, 0x13, 0x52,  0x17, 0x96, 0x02, 0x00,  0x08, 0x0F, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,
-  0x4E, 0x96, 0x04, 0x00,  0x08, 0x20, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x21, 0x4E, 0x4F,
-  0x96, 0x02, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,
-  0x22, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x23, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0F,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x24,  0x08, 0x01, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x25,  0x4E, 0x4F, 0x96, 0x04,  0x00, 0x08, 0x26, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x26, 0x4E,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x26, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,
-  0x07, 0x00, 0x00, 0x00,  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x26,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x27,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x28,
-  0x4E, 0x4F, 0x96, 0x04,  0x00, 0x08, 0x29, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x29, 0x4E,
-  0x1D, 0x96, 0x02, 0x00,  0x08, 0x29, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,  0x07, 0x00, 0x00, 0x00,
-  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x29,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,
-  0x04, 0x00, 0x08, 0x2A,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x2B,  0x4E, 0x4F, 0x96, 0x02,
-  0x00, 0x08, 0x29, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x2C, 0x08,
-  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2D, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x29, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x2E, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x2F, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x29, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,
-  0x96, 0x04, 0x00, 0x08,  0x30, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x31, 0x4E, 0x4F, 0x96,
-  0x02, 0x00, 0x08, 0x29,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x32,
-  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x33,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x29, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x34, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x35, 0x4E,  0x4F, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x37, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x36, 0x07,  0x03, 0x00, 0x00, 0x00,  0x08, 0x29, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x13, 0x52, 0x17,  0x96, 0x03, 0x00, 0x02,
-  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x39,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x38, 0x07, 0x03,
-  0x00, 0x00, 0x00, 0x08,  0x29, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,
-  0x13, 0x52, 0x17, 0x96,  0x02, 0x00, 0x08, 0x3A,  0x8E, 0x0B, 0x00, 0x00,  0x01, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x73, 0x00,  0x27, 0x00, 0x96, 0x02,  0x00, 0x08, 0x3B, 0x1C,  0x12, 0x9D, 0x02, 0x00,
-  0x1B, 0x00, 0x96, 0x04,  0x00, 0x08, 0x3C, 0x08,  0x3B, 0x1C, 0x47, 0x96,  0x07, 0x00, 0x07, 0x01,
-  0x00, 0x00, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x3A, 0x52,  0x17, 0x1D, 0x96, 0x02,
-  0x00, 0x08, 0x3D, 0x8E,  0x0B, 0x00, 0x00, 0x01,  0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,
-  0x00, 0x96, 0x02, 0x00,  0x08, 0x3B, 0x1C, 0x12,  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,
-  0x08, 0x3E, 0x08, 0x3B,  0x1C, 0x47, 0x96, 0x07,  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x3A, 0x52, 0x17,  0x1D, 0x00
+  0x15, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x14, 0x07,  0x03, 0x00, 0x00, 0x00,  0x08, 0x12, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x11, 0x52, 0x17,  0x96, 0x03, 0x00, 0x02,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x17,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x16, 0x07, 0x03,
+  0x00, 0x00, 0x00, 0x08,  0x12, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,
+  0x11, 0x52, 0x17, 0x96,  0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x19, 0x4E,
+  0x96, 0x09, 0x00, 0x08,  0x18, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x12,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x04, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x11,  0x52, 0x17, 0x96, 0x03,  0x00, 0x02, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x1B, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x1A,  0x07, 0x03, 0x00, 0x00,
+  0x00, 0x08, 0x12, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x11, 0x52,
+  0x17, 0x96, 0x02, 0x00,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1E,  0x4E, 0x96, 0x02, 0x00,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1D,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x1C, 0x07, 0x03,
+  0x00, 0x00, 0x00, 0x08,  0x12, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,
+  0x11, 0x52, 0x17, 0x96,  0x02, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x21, 0x4E, 0x96,
+  0x02, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x20, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x1F,
+  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x12, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x02,
+  0x00, 0x08, 0x11, 0x52,  0x17, 0x96, 0x02, 0x00,  0x08, 0x12, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,
+  0x4E, 0x96, 0x04, 0x00,  0x08, 0x22, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x23, 0x4E, 0x4F,
+  0x96, 0x02, 0x00, 0x08,  0x12, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,
+  0x24, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x25, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x12,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x26,  0x08, 0x01, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x27,  0x4E, 0x4F, 0x96, 0x04,  0x00, 0x08, 0x28, 0x08,  0x01, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x28, 0x4E,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x28, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,
+  0x07, 0x00, 0x00, 0x00,  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x28,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x29,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x2A,
+  0x4E, 0x4F, 0x96, 0x04,  0x00, 0x08, 0x2B, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2B, 0x4E,
+  0x1D, 0x96, 0x02, 0x00,  0x08, 0x2B, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,  0x07, 0x00, 0x00, 0x00,
+  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x2B,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,
+  0x04, 0x00, 0x08, 0x2C,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x2D,  0x4E, 0x4F, 0x96, 0x02,
+  0x00, 0x08, 0x2B, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x2E, 0x08,
+  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2F, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x2B, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x30, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x31, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x2B, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,
+  0x96, 0x04, 0x00, 0x08,  0x32, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x33, 0x4E, 0x4F, 0x96,
+  0x02, 0x00, 0x08, 0x2B,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x34,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x35,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x2B, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x36, 0x08,  0x01, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x37, 0x4E,  0x4F, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x39, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x38, 0x07,  0x03, 0x00, 0x00, 0x00,  0x08, 0x2B, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x11, 0x52, 0x17,  0x96, 0x03, 0x00, 0x02,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x3B,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x3A, 0x07, 0x03,
+  0x00, 0x00, 0x00, 0x08,  0x2B, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,
+  0x11, 0x52, 0x17, 0x96,  0x02, 0x00, 0x08, 0x3C,  0x8E, 0x0B, 0x00, 0x00,  0x01, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x73, 0x00,  0x27, 0x00, 0x96, 0x02,  0x00, 0x08, 0x3D, 0x1C,  0x12, 0x9D, 0x02, 0x00,
+  0x1B, 0x00, 0x96, 0x04,  0x00, 0x08, 0x3E, 0x08,  0x3D, 0x1C, 0x47, 0x96,  0x07, 0x00, 0x07, 0x01,
+  0x00, 0x00, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x3C, 0x52,  0x17, 0x1D, 0x96, 0x02,
+  0x00, 0x08, 0x3F, 0x8E,  0x0B, 0x00, 0x00, 0x01,  0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,
+  0x00, 0x96, 0x02, 0x00,  0x08, 0x3D, 0x1C, 0x12,  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,
+  0x08, 0x40, 0x08, 0x3D,  0x1C, 0x47, 0x96, 0x07,  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x3C, 0x52, 0x17,  0x1D, 0x00
 };
 
commit 3a7b5ccc4b7987f77cbe872906ac18afa0de075b
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 18:13:49 2008 +0200

    Always require a port number when creating new HTTPServer

diff --git a/test/swfdec_test_http_server.c b/test/swfdec_test_http_server.c
index 0400501..c30f0a0 100644
--- a/test/swfdec_test_http_server.c
+++ b/test/swfdec_test_http_server.c
@@ -191,10 +191,10 @@ swfdec_test_http_server_create (SwfdecAsContext *cx, SwfdecAsObject *object, gui
   SwfdecTestHTTPServer *server;
   int port;
 
-  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_SERVER, &server, "|i", &port);
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_SERVER, &server, "i", &port);
 
   if (port <= 0)
-    port = 12345;
+    return;
 
   server->port = port;
 
commit 8457a9cc58a177521a2efb52302fdce92722b7e7
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 18:10:47 2008 +0200

    Simplify the statusCode handling

diff --git a/test/swfdec_test_http_request.c b/test/swfdec_test_http_request.c
index fdeca46..5541e02 100644
--- a/test/swfdec_test_http_request.c
+++ b/test/swfdec_test_http_request.c
@@ -55,8 +55,7 @@ swfdec_test_http_request_new (SwfdecAsContext *context,
   soup_message_headers_set_encoding (message->response_headers,
       SOUP_ENCODING_CHUNKED);
   soup_message_set_flags (message, SOUP_MESSAGE_OVERWRITE_CHUNKS);
-  soup_message_set_status (request->message,
-      SOUP_STATUS_INTERNAL_SERVER_ERROR);
+  soup_message_set_status (message, SOUP_STATUS_OK);
 
   SWFDEC_TEST_HTTP_REQUEST (ret)->server = server;
   SWFDEC_TEST_HTTP_REQUEST (ret)->message = message;
@@ -266,11 +265,7 @@ swfdec_test_http_request_get_statusCode (SwfdecAsContext *cx,
 
   SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "");
 
-  if (request->status_set) {
-    SWFDEC_AS_VALUE_SET_INT (retval, request->message->status_code);
-  } else {
-    SWFDEC_AS_VALUE_SET_NULL (retval);
-  }
+  SWFDEC_AS_VALUE_SET_INT (retval, request->message->status_code);
 }
 
 SWFDEC_TEST_FUNCTION ("HTTPRequest_set_statusCode", swfdec_test_http_request_set_statusCode, 0)
@@ -280,26 +275,19 @@ swfdec_test_http_request_set_statusCode (SwfdecAsContext *cx,
     SwfdecAsValue *retval)
 {
   SwfdecTestHTTPRequest *request;
-  SwfdecAsValue val;
+  int status_code;
 
-  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "v", &val);
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "i", &status_code);
+
+  if (status_code < 0)
+    return;
 
   if (request->state > SWFDEC_TEST_HTTP_REQUEST_STATE_WAITING) {
     swfdec_test_throw (cx, "Headers have already been sent");
     return;
   }
 
-  if (SWFDEC_AS_VALUE_IS_NULL (&val) || SWFDEC_AS_VALUE_IS_UNDEFINED (&val)) {
-    soup_message_set_status (request->message,
-	SOUP_STATUS_INTERNAL_SERVER_ERROR);
-    request->status_set = FALSE;
-  } else {
-    int status_code = swfdec_as_value_to_integer (cx, &val);
-    if (status_code < 0)
-      return;
-    soup_message_set_status (request->message, status_code);
-    request->status_set = TRUE;
-  }
+  soup_message_set_status (request->message, status_code);
 }
 
 SWFDEC_TEST_FUNCTION ("HTTPRequest_send", swfdec_test_http_request_send, 0)
@@ -317,11 +305,6 @@ swfdec_test_http_request_send (SwfdecAsContext *cx, SwfdecAsObject *object,
     return;
   }
 
-  if (!request->status_set) {
-    soup_message_set_status (request->message, SOUP_STATUS_OK);
-    request->status_set = TRUE;
-  }
-
   if (SWFDEC_AS_VALUE_IS_OBJECT (&val) &&
       SWFDEC_IS_TEST_BUFFER (SWFDEC_AS_VALUE_GET_OBJECT (&val))) {
     SwfdecTestBuffer *buffer =
@@ -355,11 +338,6 @@ swfdec_test_http_request_close (SwfdecAsContext *cx, SwfdecAsObject *object,
     return;
   }
 
-  if (!request->status_set) {
-    soup_message_set_status (request->message, SOUP_STATUS_OK);
-    request->status_set = TRUE;
-  }
-
   soup_message_body_complete (request->message->response_body);
   soup_server_unpause_message (request->server->server, request->message);
 
diff --git a/test/swfdec_test_http_request.h b/test/swfdec_test_http_request.h
index e4b08ae..892f079 100644
--- a/test/swfdec_test_http_request.h
+++ b/test/swfdec_test_http_request.h
@@ -51,9 +51,8 @@ struct _SwfdecTestHTTPRequest
 
   SwfdecTestHTTPServer *	server;
   SoupMessage *			message;
-  gboolean			status_set;
-  SwfdecTestHTTPRequestState	state;
 
+  SwfdecTestHTTPRequestState	state;
   SwfdecAsObject *		headers;
 };
 
commit de8d0437dfbc973c6b92c63251cf1a8e587d596f
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 18:07:39 2008 +0200

    Add statusCode property for HTTPRequest

diff --git a/test/swfdec_test_http_request.c b/test/swfdec_test_http_request.c
index 51a4757..fdeca46 100644
--- a/test/swfdec_test_http_request.c
+++ b/test/swfdec_test_http_request.c
@@ -55,11 +55,11 @@ swfdec_test_http_request_new (SwfdecAsContext *context,
   soup_message_headers_set_encoding (message->response_headers,
       SOUP_ENCODING_CHUNKED);
   soup_message_set_flags (message, SOUP_MESSAGE_OVERWRITE_CHUNKS);
+  soup_message_set_status (request->message,
+      SOUP_STATUS_INTERNAL_SERVER_ERROR);
 
   SWFDEC_TEST_HTTP_REQUEST (ret)->server = server;
   SWFDEC_TEST_HTTP_REQUEST (ret)->message = message;
-  SWFDEC_TEST_HTTP_REQUEST (ret)->state =
-    SWFDEC_TEST_HTTP_REQUEST_STATE_WAITING;
 
   return ret;
 }
@@ -256,6 +256,52 @@ swfdec_test_http_request_set_contentType (SwfdecAsContext *cx,
   }
 }
 
+SWFDEC_TEST_FUNCTION ("HTTPRequest_get_statusCode", swfdec_test_http_request_get_statusCode, 0)
+void
+swfdec_test_http_request_get_statusCode (SwfdecAsContext *cx,
+    SwfdecAsObject *object, guint argc, SwfdecAsValue *argv,
+    SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPRequest *request;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "");
+
+  if (request->status_set) {
+    SWFDEC_AS_VALUE_SET_INT (retval, request->message->status_code);
+  } else {
+    SWFDEC_AS_VALUE_SET_NULL (retval);
+  }
+}
+
+SWFDEC_TEST_FUNCTION ("HTTPRequest_set_statusCode", swfdec_test_http_request_set_statusCode, 0)
+void
+swfdec_test_http_request_set_statusCode (SwfdecAsContext *cx,
+    SwfdecAsObject *object, guint argc, SwfdecAsValue *argv,
+    SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPRequest *request;
+  SwfdecAsValue val;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "v", &val);
+
+  if (request->state > SWFDEC_TEST_HTTP_REQUEST_STATE_WAITING) {
+    swfdec_test_throw (cx, "Headers have already been sent");
+    return;
+  }
+
+  if (SWFDEC_AS_VALUE_IS_NULL (&val) || SWFDEC_AS_VALUE_IS_UNDEFINED (&val)) {
+    soup_message_set_status (request->message,
+	SOUP_STATUS_INTERNAL_SERVER_ERROR);
+    request->status_set = FALSE;
+  } else {
+    int status_code = swfdec_as_value_to_integer (cx, &val);
+    if (status_code < 0)
+      return;
+    soup_message_set_status (request->message, status_code);
+    request->status_set = TRUE;
+  }
+}
+
 SWFDEC_TEST_FUNCTION ("HTTPRequest_send", swfdec_test_http_request_send, 0)
 void
 swfdec_test_http_request_send (SwfdecAsContext *cx, SwfdecAsObject *object,
diff --git a/test/swfdec_test_initialize.as b/test/swfdec_test_initialize.as
index 1843080..018c56c 100644
--- a/test/swfdec_test_initialize.as
+++ b/test/swfdec_test_initialize.as
@@ -38,6 +38,7 @@ HTTPRequest.prototype.addProperty ("url", Native.HTTPRequest_get_url, null);
 HTTPRequest.prototype.addProperty ("path", Native.HTTPRequest_get_path, null);
 HTTPRequest.prototype.addProperty ("headers", Native.HTTPRequest_get_headers, null);
 HTTPRequest.prototype.addProperty ("contentType", Native.HTTPRequest_get_contentType, Native.HTTPRequest_set_contentType);
+HTTPRequest.prototype.addProperty ("statusCode", Native.HTTPRequest_get_statusCode, Native.HTTPRequest_set_statusCode);
 HTTPRequest.prototype.toString = Native.HTTPRequest_toString;
 HTTPRequest.prototype.send = Native.HTTPRequest_send;
 HTTPRequest.prototype.close = Native.HTTPRequest_close;
diff --git a/test/swfdec_test_initialize.h b/test/swfdec_test_initialize.h
index 0a2476a..e0ebfd3 100644
--- a/test/swfdec_test_initialize.h
+++ b/test/swfdec_test_initialize.h
@@ -2,7 +2,7 @@
 
 /* compiled from swfdec_test_initialize.as */
 static const unsigned char swfdec_test_initialize[] = {
-  0x88, 0xAD, 0x02, 0x3C,  0x00, 0x42, 0x75, 0x66,  0x66, 0x65, 0x72, 0x00,  0x4E, 0x61, 0x74, 0x69,
+  0x88, 0xEE, 0x02, 0x3F,  0x00, 0x42, 0x75, 0x66,  0x66, 0x65, 0x72, 0x00,  0x4E, 0x61, 0x74, 0x69,
   0x76, 0x65, 0x00, 0x6C,  0x6F, 0x61, 0x64, 0x00,  0x42, 0x75, 0x66, 0x66,  0x65, 0x72, 0x5F, 0x6C,
   0x6F, 0x61, 0x64, 0x00,  0x70, 0x72, 0x6F, 0x74,  0x6F, 0x74, 0x79, 0x70,  0x65, 0x00, 0x64, 0x69,
   0x66, 0x66, 0x00, 0x42,  0x75, 0x66, 0x66, 0x65,  0x72, 0x5F, 0x64, 0x69,  0x66, 0x66, 0x00, 0x49,
@@ -24,89 +24,96 @@ static const unsigned char swfdec_test_initialize[] = {
   0x65, 0x00, 0x48, 0x54,  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,
   0x74, 0x5F, 0x63, 0x6F,  0x6E, 0x74, 0x65, 0x6E,  0x74, 0x54, 0x79, 0x70,  0x65, 0x00, 0x48, 0x54,
   0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x73, 0x65,  0x74, 0x5F, 0x63, 0x6F,
-  0x6E, 0x74, 0x65, 0x6E,  0x74, 0x54, 0x79, 0x70,  0x65, 0x00, 0x74, 0x6F,  0x53, 0x74, 0x72, 0x69,
-  0x6E, 0x67, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x74,
-  0x6F, 0x53, 0x74, 0x72,  0x69, 0x6E, 0x67, 0x00,  0x73, 0x65, 0x6E, 0x64,  0x00, 0x48, 0x54, 0x54,
-  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x73, 0x65, 0x6E,  0x64, 0x00, 0x63, 0x6C,
-  0x6F, 0x73, 0x65, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,
-  0x63, 0x6C, 0x6F, 0x73,  0x65, 0x00, 0x53, 0x6F,  0x63, 0x6B, 0x65, 0x74,  0x00, 0x70, 0x72, 0x6F,
-  0x63, 0x65, 0x73, 0x73,  0x00, 0x53, 0x6F, 0x63,  0x6B, 0x65, 0x74, 0x5F,  0x70, 0x72, 0x6F, 0x63,
-  0x65, 0x73, 0x73, 0x00,  0x54, 0x65, 0x73, 0x74,  0x00, 0x61, 0x64, 0x76,  0x61, 0x6E, 0x63, 0x65,
-  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x61, 0x64,  0x76, 0x61, 0x6E, 0x63,  0x65, 0x00, 0x6D, 0x6F,
-  0x75, 0x73, 0x65, 0x5F,  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,
-  0x75, 0x73, 0x65, 0x5F,  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x6D, 0x6F, 0x75,  0x73, 0x65, 0x5F, 0x70,
-  0x72, 0x65, 0x73, 0x73,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
-  0x70, 0x72, 0x65, 0x73,  0x73, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,  0x72, 0x65, 0x6C, 0x65,
-  0x61, 0x73, 0x65, 0x00,  0x54, 0x65, 0x73, 0x74,  0x5F, 0x6D, 0x6F, 0x75,  0x73, 0x65, 0x5F, 0x72,
-  0x65, 0x6C, 0x65, 0x61,  0x73, 0x65, 0x00, 0x72,  0x65, 0x6E, 0x64, 0x65,  0x72, 0x00, 0x54, 0x65,
-  0x73, 0x74, 0x5F, 0x72,  0x65, 0x6E, 0x64, 0x65,  0x72, 0x00, 0x72, 0x65,  0x73, 0x65, 0x74, 0x00,
-  0x54, 0x65, 0x73, 0x74,  0x5F, 0x72, 0x65, 0x73,  0x65, 0x74, 0x00, 0x72,  0x61, 0x74, 0x65, 0x00,
-  0x54, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x72, 0x61, 0x74,  0x65, 0x00, 0x74, 0x72,
-  0x61, 0x63, 0x65, 0x00,  0x54, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x74, 0x72, 0x61,
-  0x63, 0x65, 0x00, 0x70,  0x72, 0x69, 0x6E, 0x74,  0x00, 0x73, 0x00, 0x49,  0x4E, 0x46, 0x4F, 0x3A,
-  0x20, 0x00, 0x65, 0x72,  0x72, 0x6F, 0x72, 0x00,  0x45, 0x52, 0x52, 0x4F,  0x52, 0x3A, 0x20, 0x00,
-  0x96, 0x04, 0x00, 0x08,  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x00, 0x4E, 0x1D, 0x96,
-  0x02, 0x00, 0x08, 0x00,  0x1C, 0x96, 0x04, 0x00,  0x08, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x03, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x00, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x04, 0x07,
-  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x00, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x05, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x06, 0x4E,
-  0x4F, 0x96, 0x04, 0x00,  0x08, 0x07, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x07, 0x4E, 0x1D,
-  0x96, 0x02, 0x00, 0x08,  0x07, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,
-  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x07, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,
-  0x00, 0x08, 0x08, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x09, 0x4E,  0x4F, 0x96, 0x02, 0x00,
-  0x08, 0x07, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x0A, 0x08, 0x01,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x0B, 0x4E, 0x4F,  0x96, 0x04, 0x00, 0x08,  0x0C, 0x08, 0x01, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x0C, 0x4E, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x0C,  0x1C, 0x96, 0x07, 0x00,
-  0x08, 0x04, 0x07, 0x00,  0x00, 0x00, 0x00, 0x43,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x0C, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x0D, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x0E, 0x4E, 0x4F,  0x96, 0x09, 0x00, 0x08,  0x0F, 0x07, 0x00, 0x00,  0x00, 0x00, 0x08, 0x10,
-  0x40, 0x1D, 0x96, 0x02,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x07, 0x00, 0x08,  0x04, 0x07, 0x00, 0x00,
-  0x00, 0x00, 0x43, 0x4F,  0x96, 0x03, 0x00, 0x02,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x12,
-  0x4E, 0x96, 0x09, 0x00,  0x08, 0x11, 0x07, 0x03,  0x00, 0x00, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,  0x13, 0x52, 0x17, 0x96,  0x03, 0x00, 0x02, 0x08,
-  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x15, 0x4E,  0x96, 0x09, 0x00, 0x08,  0x14, 0x07, 0x03, 0x00,
-  0x00, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x13,
-  0x52, 0x17, 0x96, 0x03,  0x00, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x17, 0x4E, 0x96,
-  0x09, 0x00, 0x08, 0x16,  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x04, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x13, 0x52,  0x17, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x19, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x18, 0x07,  0x03, 0x00, 0x00, 0x00,
-  0x08, 0x0F, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x13, 0x52, 0x17,
-  0x96, 0x02, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1C, 0x4E,  0x96, 0x02, 0x00, 0x08,
-  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1B, 0x4E,  0x96, 0x09, 0x00, 0x08,  0x1A, 0x07, 0x03, 0x00,
-  0x00, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x13,
-  0x52, 0x17, 0x96, 0x02,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,
-  0x00, 0x08, 0x1D, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1E, 0x4E,  0x4F, 0x96, 0x02, 0x00,
-  0x08, 0x0F, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x1F, 0x08, 0x01,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x20, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x21, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x22, 0x4E, 0x4F, 0x96,  0x04, 0x00, 0x08, 0x23,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x23,
-  0x4E, 0x1D, 0x96, 0x02,  0x00, 0x08, 0x23, 0x1C,  0x96, 0x07, 0x00, 0x08,  0x04, 0x07, 0x00, 0x00,
-  0x00, 0x00, 0x43, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x23, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,
-  0x96, 0x04, 0x00, 0x08,  0x24, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x25, 0x4E, 0x4F, 0x96,
-  0x04, 0x00, 0x08, 0x26,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x26,  0x4E, 0x1D, 0x96, 0x02,
-  0x00, 0x08, 0x26, 0x1C,  0x96, 0x07, 0x00, 0x08,  0x04, 0x07, 0x00, 0x00,  0x00, 0x00, 0x43, 0x4F,
-  0x96, 0x02, 0x00, 0x08,  0x26, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,
-  0x27, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x28, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x26,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x29,  0x08, 0x01, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x2A,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x26, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x2B, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2C, 0x4E,
-  0x4F, 0x96, 0x02, 0x00,  0x08, 0x26, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,
-  0x08, 0x2D, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x2E, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,
-  0x26, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x2F, 0x08, 0x01, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x30, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x26,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x31,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x32,
-  0x4E, 0x4F, 0x96, 0x03,  0x00, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x34, 0x4E, 0x96,
-  0x09, 0x00, 0x08, 0x33,  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x26, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x04, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x13, 0x52,  0x17, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x36, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x35, 0x07,  0x03, 0x00, 0x00, 0x00,
-  0x08, 0x26, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x13, 0x52, 0x17,
-  0x96, 0x02, 0x00, 0x08,  0x37, 0x8E, 0x0B, 0x00,  0x00, 0x01, 0x00, 0x00,  0x00, 0x00, 0x00, 0x73,
-  0x00, 0x27, 0x00, 0x96,  0x02, 0x00, 0x08, 0x38,  0x1C, 0x12, 0x9D, 0x02,  0x00, 0x1B, 0x00, 0x96,
-  0x04, 0x00, 0x08, 0x39,  0x08, 0x38, 0x1C, 0x47,  0x96, 0x07, 0x00, 0x07,  0x01, 0x00, 0x00, 0x00,
-  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x37,  0x52, 0x17, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x3A,
-  0x8E, 0x0B, 0x00, 0x00,  0x01, 0x00, 0x00, 0x00,  0x00, 0x00, 0x73, 0x00,  0x27, 0x00, 0x96, 0x02,
-  0x00, 0x08, 0x38, 0x1C,  0x12, 0x9D, 0x02, 0x00,  0x1B, 0x00, 0x96, 0x04,  0x00, 0x08, 0x3B, 0x08,
-  0x38, 0x1C, 0x47, 0x96,  0x07, 0x00, 0x07, 0x01,  0x00, 0x00, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x37, 0x52,  0x17, 0x1D, 0x00
+  0x6E, 0x74, 0x65, 0x6E,  0x74, 0x54, 0x79, 0x70,  0x65, 0x00, 0x73, 0x74,  0x61, 0x74, 0x75, 0x73,
+  0x43, 0x6F, 0x64, 0x65,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
+  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x73, 0x74, 0x61,  0x74, 0x75, 0x73, 0x43,  0x6F, 0x64, 0x65, 0x00,
+  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,  0x73, 0x65, 0x74, 0x5F,
+  0x73, 0x74, 0x61, 0x74,  0x75, 0x73, 0x43, 0x6F,  0x64, 0x65, 0x00, 0x74,  0x6F, 0x53, 0x74, 0x72,
+  0x69, 0x6E, 0x67, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,
+  0x74, 0x6F, 0x53, 0x74,  0x72, 0x69, 0x6E, 0x67,  0x00, 0x73, 0x65, 0x6E,  0x64, 0x00, 0x48, 0x54,
+  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x73, 0x65,  0x6E, 0x64, 0x00, 0x63,
+  0x6C, 0x6F, 0x73, 0x65,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
+  0x5F, 0x63, 0x6C, 0x6F,  0x73, 0x65, 0x00, 0x53,  0x6F, 0x63, 0x6B, 0x65,  0x74, 0x00, 0x70, 0x72,
+  0x6F, 0x63, 0x65, 0x73,  0x73, 0x00, 0x53, 0x6F,  0x63, 0x6B, 0x65, 0x74,  0x5F, 0x70, 0x72, 0x6F,
+  0x63, 0x65, 0x73, 0x73,  0x00, 0x54, 0x65, 0x73,  0x74, 0x00, 0x61, 0x64,  0x76, 0x61, 0x6E, 0x63,
+  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x61,  0x64, 0x76, 0x61, 0x6E,  0x63, 0x65, 0x00, 0x6D,
+  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x6D, 0x6F, 0x76,  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x6D,
+  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x6D, 0x6F, 0x76,  0x65, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
+  0x70, 0x72, 0x65, 0x73,  0x73, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x6D,  0x6F, 0x75, 0x73, 0x65,
+  0x5F, 0x70, 0x72, 0x65,  0x73, 0x73, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x72, 0x65, 0x6C,
+  0x65, 0x61, 0x73, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
+  0x72, 0x65, 0x6C, 0x65,  0x61, 0x73, 0x65, 0x00,  0x72, 0x65, 0x6E, 0x64,  0x65, 0x72, 0x00, 0x54,
+  0x65, 0x73, 0x74, 0x5F,  0x72, 0x65, 0x6E, 0x64,  0x65, 0x72, 0x00, 0x72,  0x65, 0x73, 0x65, 0x74,
+  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x72, 0x65,  0x73, 0x65, 0x74, 0x00,  0x72, 0x61, 0x74, 0x65,
+  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x72, 0x61,  0x74, 0x65, 0x00, 0x74,
+  0x72, 0x61, 0x63, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x74, 0x72,
+  0x61, 0x63, 0x65, 0x00,  0x70, 0x72, 0x69, 0x6E,  0x74, 0x00, 0x73, 0x00,  0x49, 0x4E, 0x46, 0x4F,
+  0x3A, 0x20, 0x00, 0x65,  0x72, 0x72, 0x6F, 0x72,  0x00, 0x45, 0x52, 0x52,  0x4F, 0x52, 0x3A, 0x20,
+  0x00, 0x96, 0x04, 0x00,  0x08, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x00, 0x4E, 0x1D,
+  0x96, 0x02, 0x00, 0x08,  0x00, 0x1C, 0x96, 0x04,  0x00, 0x08, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x03, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x00, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,
+  0x07, 0x00, 0x00, 0x00,  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x00,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x05,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x06,
+  0x4E, 0x4F, 0x96, 0x04,  0x00, 0x08, 0x07, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x07, 0x4E,
+  0x1D, 0x96, 0x02, 0x00,  0x08, 0x07, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,  0x07, 0x00, 0x00, 0x00,
+  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x07,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,
+  0x04, 0x00, 0x08, 0x08,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x09,  0x4E, 0x4F, 0x96, 0x02,
+  0x00, 0x08, 0x07, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x0A, 0x08,
+  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x0B, 0x4E,  0x4F, 0x96, 0x04, 0x00,  0x08, 0x0C, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x0C, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,  0x0C, 0x1C, 0x96, 0x07,
+  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x0C, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x0D, 0x08,  0x01, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x0E, 0x4E,  0x4F, 0x96, 0x09, 0x00,  0x08, 0x0F, 0x07, 0x00,  0x00, 0x00, 0x00, 0x08,
+  0x10, 0x40, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x07, 0x00,  0x08, 0x04, 0x07, 0x00,
+  0x00, 0x00, 0x00, 0x43,  0x4F, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x12, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x11, 0x07,  0x03, 0x00, 0x00, 0x00,  0x08, 0x0F, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x13, 0x52, 0x17,  0x96, 0x03, 0x00, 0x02,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x15,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x14, 0x07, 0x03,
+  0x00, 0x00, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,
+  0x13, 0x52, 0x17, 0x96,  0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x17, 0x4E,
+  0x96, 0x09, 0x00, 0x08,  0x16, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x04, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x13,  0x52, 0x17, 0x96, 0x03,  0x00, 0x02, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x19, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x18,  0x07, 0x03, 0x00, 0x00,
+  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x13, 0x52,
+  0x17, 0x96, 0x02, 0x00,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1C,  0x4E, 0x96, 0x02, 0x00,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1B,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x1A, 0x07, 0x03,
+  0x00, 0x00, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,
+  0x13, 0x52, 0x17, 0x96,  0x02, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x1F, 0x4E, 0x96,
+  0x02, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x1E, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x1D,
+  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x02,
+  0x00, 0x08, 0x13, 0x52,  0x17, 0x96, 0x02, 0x00,  0x08, 0x0F, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,
+  0x4E, 0x96, 0x04, 0x00,  0x08, 0x20, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x21, 0x4E, 0x4F,
+  0x96, 0x02, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,
+  0x22, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x23, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0F,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x24,  0x08, 0x01, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x25,  0x4E, 0x4F, 0x96, 0x04,  0x00, 0x08, 0x26, 0x08,  0x01, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x26, 0x4E,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x26, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,
+  0x07, 0x00, 0x00, 0x00,  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x26,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x27,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x28,
+  0x4E, 0x4F, 0x96, 0x04,  0x00, 0x08, 0x29, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x29, 0x4E,
+  0x1D, 0x96, 0x02, 0x00,  0x08, 0x29, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,  0x07, 0x00, 0x00, 0x00,
+  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x29,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,
+  0x04, 0x00, 0x08, 0x2A,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x2B,  0x4E, 0x4F, 0x96, 0x02,
+  0x00, 0x08, 0x29, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x2C, 0x08,
+  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2D, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x29, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x2E, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x2F, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x29, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,
+  0x96, 0x04, 0x00, 0x08,  0x30, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x31, 0x4E, 0x4F, 0x96,
+  0x02, 0x00, 0x08, 0x29,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x32,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x33,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x29, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x34, 0x08,  0x01, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x35, 0x4E,  0x4F, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x37, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x36, 0x07,  0x03, 0x00, 0x00, 0x00,  0x08, 0x29, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x13, 0x52, 0x17,  0x96, 0x03, 0x00, 0x02,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x39,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x38, 0x07, 0x03,
+  0x00, 0x00, 0x00, 0x08,  0x29, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,
+  0x13, 0x52, 0x17, 0x96,  0x02, 0x00, 0x08, 0x3A,  0x8E, 0x0B, 0x00, 0x00,  0x01, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x73, 0x00,  0x27, 0x00, 0x96, 0x02,  0x00, 0x08, 0x3B, 0x1C,  0x12, 0x9D, 0x02, 0x00,
+  0x1B, 0x00, 0x96, 0x04,  0x00, 0x08, 0x3C, 0x08,  0x3B, 0x1C, 0x47, 0x96,  0x07, 0x00, 0x07, 0x01,
+  0x00, 0x00, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x3A, 0x52,  0x17, 0x1D, 0x96, 0x02,
+  0x00, 0x08, 0x3D, 0x8E,  0x0B, 0x00, 0x00, 0x01,  0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,
+  0x00, 0x96, 0x02, 0x00,  0x08, 0x3B, 0x1C, 0x12,  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,
+  0x08, 0x3E, 0x08, 0x3B,  0x1C, 0x47, 0x96, 0x07,  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x3A, 0x52, 0x17,  0x1D, 0x00
 };
 
commit 2a26f0db298bf90330d4e91f71837ea87ed0a934
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 17:39:30 2008 +0200

    Rename HTTPRequest.push to send

diff --git a/test/swfdec_test_http_request.c b/test/swfdec_test_http_request.c
index 8067369..51a4757 100644
--- a/test/swfdec_test_http_request.c
+++ b/test/swfdec_test_http_request.c
@@ -256,9 +256,9 @@ swfdec_test_http_request_set_contentType (SwfdecAsContext *cx,
   }
 }
 
-SWFDEC_TEST_FUNCTION ("HTTPRequest_push", swfdec_test_http_request_push, 0)
+SWFDEC_TEST_FUNCTION ("HTTPRequest_send", swfdec_test_http_request_send, 0)
 void
-swfdec_test_http_request_push (SwfdecAsContext *cx, SwfdecAsObject *object,
+swfdec_test_http_request_send (SwfdecAsContext *cx, SwfdecAsObject *object,
     guint argc, SwfdecAsValue *argv, SwfdecAsValue *retval)
 {
   SwfdecTestHTTPRequest *request;
diff --git a/test/swfdec_test_initialize.as b/test/swfdec_test_initialize.as
index 36f090d..1843080 100644
--- a/test/swfdec_test_initialize.as
+++ b/test/swfdec_test_initialize.as
@@ -39,7 +39,7 @@ HTTPRequest.prototype.addProperty ("path", Native.HTTPRequest_get_path, null);
 HTTPRequest.prototype.addProperty ("headers", Native.HTTPRequest_get_headers, null);
 HTTPRequest.prototype.addProperty ("contentType", Native.HTTPRequest_get_contentType, Native.HTTPRequest_set_contentType);
 HTTPRequest.prototype.toString = Native.HTTPRequest_toString;
-HTTPRequest.prototype.push = Native.HTTPRequest_push;
+HTTPRequest.prototype.send = Native.HTTPRequest_send;
 HTTPRequest.prototype.close = Native.HTTPRequest_close;
 
 Socket = Native.Socket;
diff --git a/test/swfdec_test_initialize.h b/test/swfdec_test_initialize.h
index 77e9e5e..0a2476a 100644
--- a/test/swfdec_test_initialize.h
+++ b/test/swfdec_test_initialize.h
@@ -26,8 +26,8 @@ static const unsigned char swfdec_test_initialize[] = {
   0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x73, 0x65,  0x74, 0x5F, 0x63, 0x6F,
   0x6E, 0x74, 0x65, 0x6E,  0x74, 0x54, 0x79, 0x70,  0x65, 0x00, 0x74, 0x6F,  0x53, 0x74, 0x72, 0x69,
   0x6E, 0x67, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x74,
-  0x6F, 0x53, 0x74, 0x72,  0x69, 0x6E, 0x67, 0x00,  0x70, 0x75, 0x73, 0x68,  0x00, 0x48, 0x54, 0x54,
-  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x70, 0x75, 0x73,  0x68, 0x00, 0x63, 0x6C,
+  0x6F, 0x53, 0x74, 0x72,  0x69, 0x6E, 0x67, 0x00,  0x73, 0x65, 0x6E, 0x64,  0x00, 0x48, 0x54, 0x54,
+  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x73, 0x65, 0x6E,  0x64, 0x00, 0x63, 0x6C,
   0x6F, 0x73, 0x65, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,
   0x63, 0x6C, 0x6F, 0x73,  0x65, 0x00, 0x53, 0x6F,  0x63, 0x6B, 0x65, 0x74,  0x00, 0x70, 0x72, 0x6F,
   0x63, 0x65, 0x73, 0x73,  0x00, 0x53, 0x6F, 0x63,  0x6B, 0x65, 0x74, 0x5F,  0x70, 0x72, 0x6F, 0x63,
commit 2eca9de48c8f2d928b56876b97438a84826c477c
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 17:25:27 2008 +0200

    Add support for pushing Buffers in HTTPRequest

diff --git a/test/swfdec_test_http_request.c b/test/swfdec_test_http_request.c
index 0977e18..8067369 100644
--- a/test/swfdec_test_http_request.c
+++ b/test/swfdec_test_http_request.c
@@ -26,6 +26,7 @@
 
 #include "swfdec_test_http_request.h"
 #include "swfdec_test_http_server.h"
+#include "swfdec_test_buffer.h"
 #include "swfdec_test_function.h"
 #include "swfdec_test_utils.h"
 
@@ -261,9 +262,9 @@ swfdec_test_http_request_push (SwfdecAsContext *cx, SwfdecAsObject *object,
     guint argc, SwfdecAsValue *argv, SwfdecAsValue *retval)
 {
   SwfdecTestHTTPRequest *request;
-  const char *data;
+  SwfdecAsValue val;
 
-  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "s", &data);
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "v", &val);
 
   if (request->state > SWFDEC_TEST_HTTP_REQUEST_STATE_SENDING) {
     swfdec_test_throw (cx, "Reply has already been sent");
@@ -275,8 +276,18 @@ swfdec_test_http_request_push (SwfdecAsContext *cx, SwfdecAsObject *object,
     request->status_set = TRUE;
   }
 
-  soup_message_body_append (request->message->response_body, SOUP_MEMORY_COPY,
-      data, strlen (data));
+  if (SWFDEC_AS_VALUE_IS_OBJECT (&val) &&
+      SWFDEC_IS_TEST_BUFFER (SWFDEC_AS_VALUE_GET_OBJECT (&val))) {
+    SwfdecTestBuffer *buffer =
+      SWFDEC_TEST_BUFFER (SWFDEC_AS_VALUE_GET_OBJECT (&val));
+    soup_message_body_append (request->message->response_body,
+	SOUP_MEMORY_COPY, buffer->buffer->data, buffer->buffer->length);
+  } else {
+    const char *data = swfdec_as_value_to_string (cx, &val);
+    soup_message_body_append (request->message->response_body,
+	SOUP_MEMORY_COPY, data, strlen (data));
+  }
+
   soup_server_unpause_message (request->server->server, request->message);
 
   swfdec_test_http_server_run (request->server);
commit 40b3bd50194fba1a4889b95e74d02c157ff453bb
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 16:54:47 2008 +0200

    Some cleanups for HTTPServer/Request code. Add contentType property

diff --git a/test/swfdec_test_http_request.c b/test/swfdec_test_http_request.c
index 15ab90a..0977e18 100644
--- a/test/swfdec_test_http_request.c
+++ b/test/swfdec_test_http_request.c
@@ -51,6 +51,10 @@ swfdec_test_http_request_new (SwfdecAsContext *context,
   if (SWFDEC_AS_VALUE_IS_OBJECT (&val))
     swfdec_as_object_set_constructor (ret, SWFDEC_AS_VALUE_GET_OBJECT (&val));
 
+  soup_message_headers_set_encoding (message->response_headers,
+      SOUP_ENCODING_CHUNKED);
+  soup_message_set_flags (message, SOUP_MESSAGE_OVERWRITE_CHUNKS);
+
   SWFDEC_TEST_HTTP_REQUEST (ret)->server = server;
   SWFDEC_TEST_HTTP_REQUEST (ret)->message = message;
   SWFDEC_TEST_HTTP_REQUEST (ret)->state =
@@ -204,6 +208,53 @@ swfdec_test_http_request_get_headers (SwfdecAsContext *cx,
   SWFDEC_AS_VALUE_SET_OBJECT (retval, request->headers);
 }
 
+SWFDEC_TEST_FUNCTION ("HTTPRequest_get_contentType", swfdec_test_http_request_get_contentType, 0)
+void
+swfdec_test_http_request_get_contentType (SwfdecAsContext *cx,
+    SwfdecAsObject *object, guint argc, SwfdecAsValue *argv,
+    SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPRequest *request;
+  const char *value;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "");
+
+  value = soup_message_headers_get (request->message->response_headers,
+      "Content-Type");
+
+  if (value != NULL) {
+    SWFDEC_AS_VALUE_SET_STRING (retval,
+	swfdec_as_context_get_string (cx, value));
+  } else {
+    SWFDEC_AS_VALUE_SET_NULL (retval);
+  }
+}
+
+SWFDEC_TEST_FUNCTION ("HTTPRequest_set_contentType", swfdec_test_http_request_set_contentType, 0)
+void
+swfdec_test_http_request_set_contentType (SwfdecAsContext *cx,
+    SwfdecAsObject *object, guint argc, SwfdecAsValue *argv,
+    SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPRequest *request;
+  SwfdecAsValue val;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "v", &val);
+
+  if (request->state > SWFDEC_TEST_HTTP_REQUEST_STATE_WAITING) {
+    swfdec_test_throw (cx, "Headers have already been sent");
+    return;
+  }
+
+  if (SWFDEC_AS_VALUE_IS_NULL (&val) || SWFDEC_AS_VALUE_IS_UNDEFINED (&val)) {
+    soup_message_headers_remove (request->message->response_headers,
+	"Content-Type");
+  } else {
+    soup_message_headers_replace (request->message->response_headers,
+	"Content-Type", swfdec_as_value_to_string (cx, &val));
+  }
+}
+
 SWFDEC_TEST_FUNCTION ("HTTPRequest_push", swfdec_test_http_request_push, 0)
 void
 swfdec_test_http_request_push (SwfdecAsContext *cx, SwfdecAsObject *object,
diff --git a/test/swfdec_test_http_server.c b/test/swfdec_test_http_server.c
index fc03c0f..0400501 100644
--- a/test/swfdec_test_http_server.c
+++ b/test/swfdec_test_http_server.c
@@ -22,7 +22,6 @@
 #include "config.h"
 #endif
 
-#include <unistd.h>
 #include <libsoup/soup.h>
 
 #include "swfdec_test_http_server.h"
@@ -39,8 +38,7 @@ swfdec_test_http_server_callback (SoupServer *soup_server,
 
   g_return_if_fail (server->server == soup_server);
 
-  soup_message_headers_set_encoding (message->response_headers,
-      SOUP_ENCODING_CHUNKED);
+  soup_server_pause_message (server->server, message);
 
   g_queue_push_head (server->messages, g_object_ref (message));
 }
diff --git a/test/swfdec_test_initialize.as b/test/swfdec_test_initialize.as
index 37cb827..36f090d 100644
--- a/test/swfdec_test_initialize.as
+++ b/test/swfdec_test_initialize.as
@@ -37,6 +37,7 @@ HTTPRequest.prototype.addProperty ("server", Native.HTTPRequest_get_server, null
 HTTPRequest.prototype.addProperty ("url", Native.HTTPRequest_get_url, null);
 HTTPRequest.prototype.addProperty ("path", Native.HTTPRequest_get_path, null);
 HTTPRequest.prototype.addProperty ("headers", Native.HTTPRequest_get_headers, null);
+HTTPRequest.prototype.addProperty ("contentType", Native.HTTPRequest_get_contentType, Native.HTTPRequest_set_contentType);
 HTTPRequest.prototype.toString = Native.HTTPRequest_toString;
 HTTPRequest.prototype.push = Native.HTTPRequest_push;
 HTTPRequest.prototype.close = Native.HTTPRequest_close;
diff --git a/test/swfdec_test_initialize.h b/test/swfdec_test_initialize.h
index 783d316..77e9e5e 100644
--- a/test/swfdec_test_initialize.h
+++ b/test/swfdec_test_initialize.h
@@ -2,7 +2,7 @@
 
 /* compiled from swfdec_test_initialize.as */
 static const unsigned char swfdec_test_initialize[] = {
-  0x88, 0x69, 0x02, 0x39,  0x00, 0x42, 0x75, 0x66,  0x66, 0x65, 0x72, 0x00,  0x4E, 0x61, 0x74, 0x69,
+  0x88, 0xAD, 0x02, 0x3C,  0x00, 0x42, 0x75, 0x66,  0x66, 0x65, 0x72, 0x00,  0x4E, 0x61, 0x74, 0x69,
   0x76, 0x65, 0x00, 0x6C,  0x6F, 0x61, 0x64, 0x00,  0x42, 0x75, 0x66, 0x66,  0x65, 0x72, 0x5F, 0x6C,
   0x6F, 0x61, 0x64, 0x00,  0x70, 0x72, 0x6F, 0x74,  0x6F, 0x74, 0x79, 0x70,  0x65, 0x00, 0x64, 0x69,
   0x66, 0x66, 0x00, 0x42,  0x75, 0x66, 0x66, 0x65,  0x72, 0x5F, 0x64, 0x69,  0x66, 0x66, 0x00, 0x49,
@@ -20,86 +20,93 @@ static const unsigned char swfdec_test_initialize[] = {
   0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,
   0x5F, 0x70, 0x61, 0x74,  0x68, 0x00, 0x68, 0x65,  0x61, 0x64, 0x65, 0x72,  0x73, 0x00, 0x48, 0x54,
   0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x68, 0x65,
-  0x61, 0x64, 0x65, 0x72,  0x73, 0x00, 0x74, 0x6F,  0x53, 0x74, 0x72, 0x69,  0x6E, 0x67, 0x00, 0x48,
-  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x74,  0x6F, 0x53, 0x74, 0x72,
-  0x69, 0x6E, 0x67, 0x00,  0x70, 0x75, 0x73, 0x68,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,
-  0x75, 0x65, 0x73, 0x74,  0x5F, 0x70, 0x75, 0x73,  0x68, 0x00, 0x63, 0x6C,  0x6F, 0x73, 0x65, 0x00,
-  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,  0x63, 0x6C, 0x6F, 0x73,
-  0x65, 0x00, 0x53, 0x6F,  0x63, 0x6B, 0x65, 0x74,  0x00, 0x70, 0x72, 0x6F,  0x63, 0x65, 0x73, 0x73,
-  0x00, 0x53, 0x6F, 0x63,  0x6B, 0x65, 0x74, 0x5F,  0x70, 0x72, 0x6F, 0x63,  0x65, 0x73, 0x73, 0x00,
-  0x54, 0x65, 0x73, 0x74,  0x00, 0x61, 0x64, 0x76,  0x61, 0x6E, 0x63, 0x65,  0x00, 0x54, 0x65, 0x73,
-  0x74, 0x5F, 0x61, 0x64,  0x76, 0x61, 0x6E, 0x63,  0x65, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
-  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
-  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x6D, 0x6F, 0x75,  0x73, 0x65, 0x5F, 0x70,  0x72, 0x65, 0x73, 0x73,
-  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,  0x70, 0x72, 0x65, 0x73,
-  0x73, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,  0x72, 0x65, 0x6C, 0x65,  0x61, 0x73, 0x65, 0x00,
-  0x54, 0x65, 0x73, 0x74,  0x5F, 0x6D, 0x6F, 0x75,  0x73, 0x65, 0x5F, 0x72,  0x65, 0x6C, 0x65, 0x61,
-  0x73, 0x65, 0x00, 0x72,  0x65, 0x6E, 0x64, 0x65,  0x72, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x72,
-  0x65, 0x6E, 0x64, 0x65,  0x72, 0x00, 0x72, 0x65,  0x73, 0x65, 0x74, 0x00,  0x54, 0x65, 0x73, 0x74,
-  0x5F, 0x72, 0x65, 0x73,  0x65, 0x74, 0x00, 0x72,  0x61, 0x74, 0x65, 0x00,  0x54, 0x65, 0x73, 0x74,
-  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x72, 0x61, 0x74,  0x65, 0x00, 0x74, 0x72,  0x61, 0x63, 0x65, 0x00,
-  0x54, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x74, 0x72, 0x61,  0x63, 0x65, 0x00, 0x70,
-  0x72, 0x69, 0x6E, 0x74,  0x00, 0x73, 0x00, 0x49,  0x4E, 0x46, 0x4F, 0x3A,  0x20, 0x00, 0x65, 0x72,
-  0x72, 0x6F, 0x72, 0x00,  0x45, 0x52, 0x52, 0x4F,  0x52, 0x3A, 0x20, 0x00,  0x96, 0x04, 0x00, 0x08,
-  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x00, 0x4E, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x00,
-  0x1C, 0x96, 0x04, 0x00,  0x08, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x03, 0x4E, 0x4F,
-  0x96, 0x02, 0x00, 0x08,  0x00, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,
-  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x00, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,
-  0x00, 0x08, 0x05, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x06, 0x4E,  0x4F, 0x96, 0x04, 0x00,
-  0x08, 0x07, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x07, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,
-  0x07, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,
-  0x00, 0x08, 0x07, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x08, 0x08,
-  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x09, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x07, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x0A, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x0B, 0x4E, 0x4F,  0x96, 0x04, 0x00, 0x08,  0x0C, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x0C, 0x4E, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x0C,  0x1C, 0x96, 0x07, 0x00,  0x08, 0x04, 0x07, 0x00,
-  0x00, 0x00, 0x00, 0x43,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x0C, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,
-  0x4E, 0x96, 0x04, 0x00,  0x08, 0x0D, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x0E, 0x4E, 0x4F,
-  0x96, 0x09, 0x00, 0x08,  0x0F, 0x07, 0x00, 0x00,  0x00, 0x00, 0x08, 0x10,  0x40, 0x1D, 0x96, 0x02,
-  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x07, 0x00, 0x08,  0x04, 0x07, 0x00, 0x00,  0x00, 0x00, 0x43, 0x4F,
-  0x96, 0x03, 0x00, 0x02,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x12,  0x4E, 0x96, 0x09, 0x00,
-  0x08, 0x11, 0x07, 0x03,  0x00, 0x00, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,
-  0x96, 0x02, 0x00, 0x08,  0x13, 0x52, 0x17, 0x96,  0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x15, 0x4E,  0x96, 0x09, 0x00, 0x08,  0x14, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x0F,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x13,  0x52, 0x17, 0x96, 0x03,
-  0x00, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x17, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x16,
-  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x02,
-  0x00, 0x08, 0x13, 0x52,  0x17, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x19, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x18, 0x07,  0x03, 0x00, 0x00, 0x00,  0x08, 0x0F, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x13, 0x52, 0x17,  0x96, 0x02, 0x00, 0x08,
-  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x1A, 0x08, 0x01, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x1B, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x1C,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1D,
-  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,
-  0x00, 0x08, 0x1E, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1F, 0x4E,  0x4F, 0x96, 0x04, 0x00,
-  0x08, 0x20, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x20, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,
-  0x20, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,
-  0x00, 0x08, 0x20, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x21, 0x08,
-  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x22, 0x4E,  0x4F, 0x96, 0x04, 0x00,  0x08, 0x23, 0x08, 0x01,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x23, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,  0x23, 0x1C, 0x96, 0x07,
-  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x23, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x24, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x25, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x23, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,
-  0x4E, 0x96, 0x04, 0x00,  0x08, 0x26, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x27, 0x4E, 0x4F,
-  0x96, 0x02, 0x00, 0x08,  0x23, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,
-  0x28, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x29, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x23,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x2A,  0x08, 0x01, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x2B,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x23, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x2C, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2D, 0x4E,
-  0x4F, 0x96, 0x02, 0x00,  0x08, 0x23, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,
-  0x08, 0x2E, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x2F, 0x4E, 0x4F,  0x96, 0x03, 0x00, 0x02,
-  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x31,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x30, 0x07, 0x03,
-  0x00, 0x00, 0x00, 0x08,  0x23, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,
-  0x13, 0x52, 0x17, 0x96,  0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x33, 0x4E,
-  0x96, 0x09, 0x00, 0x08,  0x32, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x23,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x04, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x13,  0x52, 0x17, 0x96, 0x02,  0x00, 0x08, 0x34, 0x8E,
-  0x0B, 0x00, 0x00, 0x01,  0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,  0x00, 0x96, 0x02, 0x00,
-  0x08, 0x35, 0x1C, 0x12,  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,  0x08, 0x36, 0x08, 0x35,
-  0x1C, 0x47, 0x96, 0x07,  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x34, 0x52, 0x17,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x37, 0x8E, 0x0B,  0x00, 0x00, 0x01, 0x00,
-  0x00, 0x00, 0x00, 0x00,  0x73, 0x00, 0x27, 0x00,  0x96, 0x02, 0x00, 0x08,  0x35, 0x1C, 0x12, 0x9D,
-  0x02, 0x00, 0x1B, 0x00,  0x96, 0x04, 0x00, 0x08,  0x38, 0x08, 0x35, 0x1C,  0x47, 0x96, 0x07, 0x00,
-  0x07, 0x01, 0x00, 0x00,  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x34, 0x52, 0x17, 0x1D,
-  0x00
+  0x61, 0x64, 0x65, 0x72,  0x73, 0x00, 0x63, 0x6F,  0x6E, 0x74, 0x65, 0x6E,  0x74, 0x54, 0x79, 0x70,
+  0x65, 0x00, 0x48, 0x54,  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,
+  0x74, 0x5F, 0x63, 0x6F,  0x6E, 0x74, 0x65, 0x6E,  0x74, 0x54, 0x79, 0x70,  0x65, 0x00, 0x48, 0x54,
+  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x73, 0x65,  0x74, 0x5F, 0x63, 0x6F,
+  0x6E, 0x74, 0x65, 0x6E,  0x74, 0x54, 0x79, 0x70,  0x65, 0x00, 0x74, 0x6F,  0x53, 0x74, 0x72, 0x69,
+  0x6E, 0x67, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x74,
+  0x6F, 0x53, 0x74, 0x72,  0x69, 0x6E, 0x67, 0x00,  0x70, 0x75, 0x73, 0x68,  0x00, 0x48, 0x54, 0x54,
+  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x70, 0x75, 0x73,  0x68, 0x00, 0x63, 0x6C,
+  0x6F, 0x73, 0x65, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,
+  0x63, 0x6C, 0x6F, 0x73,  0x65, 0x00, 0x53, 0x6F,  0x63, 0x6B, 0x65, 0x74,  0x00, 0x70, 0x72, 0x6F,
+  0x63, 0x65, 0x73, 0x73,  0x00, 0x53, 0x6F, 0x63,  0x6B, 0x65, 0x74, 0x5F,  0x70, 0x72, 0x6F, 0x63,
+  0x65, 0x73, 0x73, 0x00,  0x54, 0x65, 0x73, 0x74,  0x00, 0x61, 0x64, 0x76,  0x61, 0x6E, 0x63, 0x65,
+  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x61, 0x64,  0x76, 0x61, 0x6E, 0x63,  0x65, 0x00, 0x6D, 0x6F,
+  0x75, 0x73, 0x65, 0x5F,  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,
+  0x75, 0x73, 0x65, 0x5F,  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x6D, 0x6F, 0x75,  0x73, 0x65, 0x5F, 0x70,
+  0x72, 0x65, 0x73, 0x73,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
+  0x70, 0x72, 0x65, 0x73,  0x73, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,  0x72, 0x65, 0x6C, 0x65,
+  0x61, 0x73, 0x65, 0x00,  0x54, 0x65, 0x73, 0x74,  0x5F, 0x6D, 0x6F, 0x75,  0x73, 0x65, 0x5F, 0x72,
+  0x65, 0x6C, 0x65, 0x61,  0x73, 0x65, 0x00, 0x72,  0x65, 0x6E, 0x64, 0x65,  0x72, 0x00, 0x54, 0x65,
+  0x73, 0x74, 0x5F, 0x72,  0x65, 0x6E, 0x64, 0x65,  0x72, 0x00, 0x72, 0x65,  0x73, 0x65, 0x74, 0x00,
+  0x54, 0x65, 0x73, 0x74,  0x5F, 0x72, 0x65, 0x73,  0x65, 0x74, 0x00, 0x72,  0x61, 0x74, 0x65, 0x00,
+  0x54, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x72, 0x61, 0x74,  0x65, 0x00, 0x74, 0x72,
+  0x61, 0x63, 0x65, 0x00,  0x54, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x74, 0x72, 0x61,
+  0x63, 0x65, 0x00, 0x70,  0x72, 0x69, 0x6E, 0x74,  0x00, 0x73, 0x00, 0x49,  0x4E, 0x46, 0x4F, 0x3A,
+  0x20, 0x00, 0x65, 0x72,  0x72, 0x6F, 0x72, 0x00,  0x45, 0x52, 0x52, 0x4F,  0x52, 0x3A, 0x20, 0x00,
+  0x96, 0x04, 0x00, 0x08,  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x00, 0x4E, 0x1D, 0x96,
+  0x02, 0x00, 0x08, 0x00,  0x1C, 0x96, 0x04, 0x00,  0x08, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x03, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x00, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x04, 0x07,
+  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x00, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x05, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x06, 0x4E,
+  0x4F, 0x96, 0x04, 0x00,  0x08, 0x07, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x07, 0x4E, 0x1D,
+  0x96, 0x02, 0x00, 0x08,  0x07, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,
+  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x07, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,
+  0x00, 0x08, 0x08, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x09, 0x4E,  0x4F, 0x96, 0x02, 0x00,
+  0x08, 0x07, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x0A, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x0B, 0x4E, 0x4F,  0x96, 0x04, 0x00, 0x08,  0x0C, 0x08, 0x01, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x0C, 0x4E, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x0C,  0x1C, 0x96, 0x07, 0x00,
+  0x08, 0x04, 0x07, 0x00,  0x00, 0x00, 0x00, 0x43,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x0C, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x0D, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x0E, 0x4E, 0x4F,  0x96, 0x09, 0x00, 0x08,  0x0F, 0x07, 0x00, 0x00,  0x00, 0x00, 0x08, 0x10,
+  0x40, 0x1D, 0x96, 0x02,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x07, 0x00, 0x08,  0x04, 0x07, 0x00, 0x00,
+  0x00, 0x00, 0x43, 0x4F,  0x96, 0x03, 0x00, 0x02,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x12,
+  0x4E, 0x96, 0x09, 0x00,  0x08, 0x11, 0x07, 0x03,  0x00, 0x00, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,  0x13, 0x52, 0x17, 0x96,  0x03, 0x00, 0x02, 0x08,
+  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x15, 0x4E,  0x96, 0x09, 0x00, 0x08,  0x14, 0x07, 0x03, 0x00,
+  0x00, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x13,
+  0x52, 0x17, 0x96, 0x03,  0x00, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x17, 0x4E, 0x96,
+  0x09, 0x00, 0x08, 0x16,  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x04, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x13, 0x52,  0x17, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x19, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x18, 0x07,  0x03, 0x00, 0x00, 0x00,
+  0x08, 0x0F, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x13, 0x52, 0x17,
+  0x96, 0x02, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1C, 0x4E,  0x96, 0x02, 0x00, 0x08,
+  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1B, 0x4E,  0x96, 0x09, 0x00, 0x08,  0x1A, 0x07, 0x03, 0x00,
+  0x00, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x13,
+  0x52, 0x17, 0x96, 0x02,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,
+  0x00, 0x08, 0x1D, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1E, 0x4E,  0x4F, 0x96, 0x02, 0x00,
+  0x08, 0x0F, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x1F, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x20, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x21, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x22, 0x4E, 0x4F, 0x96,  0x04, 0x00, 0x08, 0x23,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x23,
+  0x4E, 0x1D, 0x96, 0x02,  0x00, 0x08, 0x23, 0x1C,  0x96, 0x07, 0x00, 0x08,  0x04, 0x07, 0x00, 0x00,
+  0x00, 0x00, 0x43, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x23, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,
+  0x96, 0x04, 0x00, 0x08,  0x24, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x25, 0x4E, 0x4F, 0x96,
+  0x04, 0x00, 0x08, 0x26,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x26,  0x4E, 0x1D, 0x96, 0x02,
+  0x00, 0x08, 0x26, 0x1C,  0x96, 0x07, 0x00, 0x08,  0x04, 0x07, 0x00, 0x00,  0x00, 0x00, 0x43, 0x4F,
+  0x96, 0x02, 0x00, 0x08,  0x26, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,
+  0x27, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x28, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x26,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x29,  0x08, 0x01, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x2A,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x26, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x2B, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2C, 0x4E,
+  0x4F, 0x96, 0x02, 0x00,  0x08, 0x26, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,
+  0x08, 0x2D, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x2E, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,
+  0x26, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x2F, 0x08, 0x01, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x30, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x26,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x31,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x32,
+  0x4E, 0x4F, 0x96, 0x03,  0x00, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x34, 0x4E, 0x96,
+  0x09, 0x00, 0x08, 0x33,  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x26, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x04, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x13, 0x52,  0x17, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x36, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x35, 0x07,  0x03, 0x00, 0x00, 0x00,
+  0x08, 0x26, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x13, 0x52, 0x17,
+  0x96, 0x02, 0x00, 0x08,  0x37, 0x8E, 0x0B, 0x00,  0x00, 0x01, 0x00, 0x00,  0x00, 0x00, 0x00, 0x73,
+  0x00, 0x27, 0x00, 0x96,  0x02, 0x00, 0x08, 0x38,  0x1C, 0x12, 0x9D, 0x02,  0x00, 0x1B, 0x00, 0x96,
+  0x04, 0x00, 0x08, 0x39,  0x08, 0x38, 0x1C, 0x47,  0x96, 0x07, 0x00, 0x07,  0x01, 0x00, 0x00, 0x00,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x37,  0x52, 0x17, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x3A,
+  0x8E, 0x0B, 0x00, 0x00,  0x01, 0x00, 0x00, 0x00,  0x00, 0x00, 0x73, 0x00,  0x27, 0x00, 0x96, 0x02,
+  0x00, 0x08, 0x38, 0x1C,  0x12, 0x9D, 0x02, 0x00,  0x1B, 0x00, 0x96, 0x04,  0x00, 0x08, 0x3B, 0x08,
+  0x38, 0x1C, 0x47, 0x96,  0x07, 0x00, 0x07, 0x01,  0x00, 0x00, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x37, 0x52,  0x17, 0x1D, 0x00
 };
 
commit 161fb327d6012512877bc78061a2192ed25732cf
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 13:52:19 2008 +0200

    Throw errors in HTTPRequest

diff --git a/test/swfdec_test_http_request.c b/test/swfdec_test_http_request.c
index 9c204a1..15ab90a 100644
--- a/test/swfdec_test_http_request.c
+++ b/test/swfdec_test_http_request.c
@@ -27,6 +27,7 @@
 #include "swfdec_test_http_request.h"
 #include "swfdec_test_http_server.h"
 #include "swfdec_test_function.h"
+#include "swfdec_test_utils.h"
 
 SwfdecAsObject *
 swfdec_test_http_request_new (SwfdecAsContext *context,
@@ -213,8 +214,10 @@ swfdec_test_http_request_push (SwfdecAsContext *cx, SwfdecAsObject *object,
 
   SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "s", &data);
 
-  if (request->state > SWFDEC_TEST_HTTP_REQUEST_STATE_SENDING)
+  if (request->state > SWFDEC_TEST_HTTP_REQUEST_STATE_SENDING) {
+    swfdec_test_throw (cx, "Reply has already been sent");
     return;
+  }
 
   if (!request->status_set) {
     soup_message_set_status (request->message, SOUP_STATUS_OK);
@@ -239,8 +242,10 @@ swfdec_test_http_request_close (SwfdecAsContext *cx, SwfdecAsObject *object,
 
   SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "");
 
-  if (request->state == SWFDEC_TEST_HTTP_REQUEST_STATE_SENT)
+  if (request->state == SWFDEC_TEST_HTTP_REQUEST_STATE_SENT) {
+    swfdec_test_throw (cx, "Reply has already been sent");
     return;
+  }
 
   if (!request->status_set) {
     soup_message_set_status (request->message, SOUP_STATUS_OK);
commit c2a3f848ea386c52932a90c5e48b3751f906c992
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 13:48:33 2008 +0200

    Make HTTPServer throw errors, remove debug code, fix a bug when startup failed

diff --git a/test/swfdec_test_http_server.c b/test/swfdec_test_http_server.c
index be54991..fc03c0f 100644
--- a/test/swfdec_test_http_server.c
+++ b/test/swfdec_test_http_server.c
@@ -28,8 +28,7 @@
 #include "swfdec_test_http_server.h"
 #include "swfdec_test_http_request.h"
 #include "swfdec_test_function.h"
-
-#define SWFDEC_TEST_HTTP_SERVER_IS_VALID(server) ((server)->server)
+#include "swfdec_test_utils.h"
 
 static void
 swfdec_test_http_server_callback (SoupServer *soup_server,
@@ -69,7 +68,7 @@ swfdec_test_http_server_start (SwfdecTestHTTPServer *server)
   server->server = soup_server_new (SOUP_SERVER_PORT, server->port,
       SOUP_SERVER_INTERFACE, address, SOUP_SERVER_ASYNC_CONTEXT,
       server->context, NULL);
-  if (!server) {
+  if (!server->server) {
     g_main_context_unref (server->context);
     server->context = NULL;
     return FALSE;
@@ -102,7 +101,11 @@ swfdec_test_http_server_new (SwfdecAsContext *context, guint port)
 
   SWFDEC_TEST_HTTP_SERVER (ret)->port = port;
 
-  swfdec_test_http_server_start (SWFDEC_TEST_HTTP_SERVER (ret));
+  if (!swfdec_test_http_server_start (SWFDEC_TEST_HTTP_SERVER (ret))) {
+    swfdec_test_throw (context, "Failed to start web server for port %i",
+	port);
+    return NULL;
+  }
 
   return ret;
 }
@@ -162,19 +165,17 @@ swfdec_test_http_server_get_request (SwfdecAsContext *cx,
 
   SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_SERVER, &server, "");
 
-  SWFDEC_AS_VALUE_SET_NULL (retval);
-
-  if (!SWFDEC_TEST_HTTP_SERVER_IS_VALID (server))
+  if (!server->server) {
+    swfdec_test_throw (cx, "Webserver not running");
     return;
+  }
 
-  if (g_queue_is_empty (server->messages)) {
-    g_print ("waiting\n");
-    usleep (1000000);
-    g_print ("checking\n");
+  if (g_queue_is_empty (server->messages))
     swfdec_test_http_server_run (server);
-  }
 
-  if (!g_queue_is_empty (server->messages)) {
+  if (g_queue_is_empty (server->messages)) {
+    SWFDEC_AS_VALUE_SET_NULL (retval);
+  } else {
     SwfdecAsObject *request;
 
     request = swfdec_test_http_request_new (cx, server,
@@ -199,5 +200,6 @@ swfdec_test_http_server_create (SwfdecAsContext *cx, SwfdecAsObject *object, gui
 
   server->port = port;
 
-  swfdec_test_http_server_start (server);
+  if (!swfdec_test_http_server_start (server))
+    swfdec_test_throw (cx, "Failed to start web server for port %i", port);
 }
commit b173b6b1c711dd228573129366b08235af3982e6
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 13:35:19 2008 +0200

    Free messages that where never requested in HTTPServer

diff --git a/test/swfdec_test_http_server.c b/test/swfdec_test_http_server.c
index d6b65be..be54991 100644
--- a/test/swfdec_test_http_server.c
+++ b/test/swfdec_test_http_server.c
@@ -116,6 +116,12 @@ swfdec_test_http_server_dispose (GObject *object)
 {
   SwfdecTestHTTPServer *server = SWFDEC_TEST_HTTP_SERVER (object);
 
+  while (!g_queue_is_empty (server->messages)) {
+    g_object_unref (g_queue_pop_tail (server->messages));
+  }
+  g_queue_free (server->messages);
+  server->messages = NULL;
+
   if (server->server) {
     soup_server_quit (server->server);
     g_object_unref (server->server);
@@ -127,8 +133,6 @@ swfdec_test_http_server_dispose (GObject *object)
     server->context = NULL;
   }
 
-  g_queue_free (server->messages);
-
   G_OBJECT_CLASS (swfdec_test_http_server_parent_class)->dispose (object);
 }
 
commit 4c29367c1b1e4dd7000a122fa6a128d2a2595b69
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 13:31:54 2008 +0200

    Fix a typo in swfdec_test_socket_process

diff --git a/test/swfdec_test_socket.c b/test/swfdec_test_socket.c
index a0382f6..7cf921c 100644
--- a/test/swfdec_test_socket.c
+++ b/test/swfdec_test_socket.c
@@ -89,7 +89,7 @@ swfdec_test_socket_process (SwfdecAsContext *cx, SwfdecAsObject *object, guint a
 {
   SwfdecTestSocket *sock;
   
-  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_SOCKET, &socket, "");
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_SOCKET, &sock, "");
 
   while (g_main_context_iteration (sock->context, FALSE));
 }
commit 77ce79d179ed289bff2035feb9efc5c7ddb526b0
Merge: ec81057... 43d8d7d...
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 13:30:02 2008 +0200

    Merge commit 'origin/test' into httptest
    
    Conflicts:
    
    	test/swfdec_test_function.c
    	test/swfdec_test_initialize.as
    	test/swfdec_test_initialize.h

diff --cc test/Makefile.am
index 398f442,bb79d49..bdc0196
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@@ -4,12 -4,14 +4,16 @@@ noinst_PROGRAMS = swfdec-tes
  
  swfdec_test_sources = \
  	swfdec_test.c \
+ 	swfdec_test_buffer.c \
  	swfdec_test_function.c \
  	swfdec_test_global.c \
 +	swfdec_test_http_request.c \
 +	swfdec_test_http_server.c \
  	swfdec_test_image.c \
- 	swfdec_test_test.c
+ 	swfdec_test_plugin.c \
+ 	swfdec_test_socket.c \
+ 	swfdec_test_test.c \
+ 	swfdec_test_utils.c
  
  BUILT_SOURCES = \
  	swfdec_test_function_list.h
@@@ -25,16 -27,18 +29,20 @@@ EXTRA_DIST = 
  	swfdec_test_initialize.as
  
  noinst_HEADERS = \
+ 	swfdec_test_buffer.h \
  	swfdec_test_function.h \
  	swfdec_test_function_list.h \
 +	swfdec_test_http_request.h \
 +	swfdec_test_http_server.h \
  	swfdec_test_image.h \
  	swfdec_test_initialize.h \
- 	swfdec_test_test.h
+ 	swfdec_test_plugin.h \
+ 	swfdec_test_socket.h \
+ 	swfdec_test_test.h \
+ 	swfdec_test_utils.h
  	
- test_CFLAGS = $(GLOBAL_CFLAGS) $(GTK_CFLAGS) $(SWFDEC_CFLAGS) $(CAIRO_CFLAGS)
- test_LDFLAGS = $(SWFDEC_LIBS) $(GTK_LIBS) $(CAIRO_LIBS)
+ swfdec_test_CFLAGS = $(GLOBAL_CFLAGS) $(GTK_CFLAGS) $(SWFDEC_CFLAGS) $(CAIRO_CFLAGS)
+ swfdec_test_LDFLAGS = $(SWFDEC_LIBS) $(GTK_LIBS) $(CAIRO_LIBS)
  
  swfdec_test_function_list.h: $(swfdec_test_sources)
  	(cd $(srcdir) \
diff --cc test/swfdec_test_function.c
index 9c5a510,6f13bbb..e29707b
--- a/test/swfdec_test_function.c
+++ b/test/swfdec_test_function.c
@@@ -25,9 -25,9 +25,11 @@@
  #include "swfdec_test_function_list.h"
  
  /* needed by the function list */
 +#include "swfdec_test_http_request.h"
 +#include "swfdec_test_http_server.h"
+ #include "swfdec_test_buffer.h"
  #include "swfdec_test_image.h"
+ #include "swfdec_test_socket.h"
  #include "swfdec_test_test.h"
  
  
diff --cc test/swfdec_test_initialize.as
index 7f94b83,b496163..37cb827
--- a/test/swfdec_test_initialize.as
+++ b/test/swfdec_test_initialize.as
@@@ -22,20 -27,10 +27,24 @@@ Image.prototype = {}
  Image.prototype.compare = Native.Image_compare;
  Image.prototype.save = Native.Image_save;
  
 +HTTPServer = Native.HTTPServer;
 +HTTPServer.prototype = {};
 +HTTPServer.prototype.getRequest = Native.HTTPServer_getRequest;
 +
 +HTTPRequest = new Object ();
 +HTTPRequest.prototype = {};
 +HTTPRequest.prototype.addProperty ("server", Native.HTTPRequest_get_server, null);
 +HTTPRequest.prototype.addProperty ("url", Native.HTTPRequest_get_url, null);
 +HTTPRequest.prototype.addProperty ("path", Native.HTTPRequest_get_path, null);
 +HTTPRequest.prototype.addProperty ("headers", Native.HTTPRequest_get_headers, null);
 +HTTPRequest.prototype.toString = Native.HTTPRequest_toString;
 +HTTPRequest.prototype.push = Native.HTTPRequest_push;
 +HTTPRequest.prototype.close = Native.HTTPRequest_close;
 +
+ Socket = Native.Socket;
+ Socket.prototype = {};
+ Socket.prototype.process = Native.Socket_process;
+ 
  Test = Native.Test;
  Test.prototype = {};
  Test.prototype.advance = Native.Test_advance;
diff --cc test/swfdec_test_initialize.h
index 9b6c0c8,a8e5023..783d316
--- a/test/swfdec_test_initialize.h
+++ b/test/swfdec_test_initialize.h
@@@ -2,89 -2,67 +2,104 @@@
  
  /* compiled from swfdec_test_initialize.as */
  static const unsigned char swfdec_test_initialize[] = {
-   0x88, 0x1E, 0x02, 0x31,  0x00, 0x49, 0x6D, 0x61,  0x67, 0x65, 0x00, 0x4E,  0x61, 0x74, 0x69, 0x76,
-   0x65, 0x00, 0x70, 0x72,  0x6F, 0x74, 0x6F, 0x74,  0x79, 0x70, 0x65, 0x00,  0x63, 0x6F, 0x6D, 0x70,
-   0x61, 0x72, 0x65, 0x00,  0x49, 0x6D, 0x61, 0x67,  0x65, 0x5F, 0x63, 0x6F,  0x6D, 0x70, 0x61, 0x72,
-   0x65, 0x00, 0x73, 0x61,  0x76, 0x65, 0x00, 0x49,  0x6D, 0x61, 0x67, 0x65,  0x5F, 0x73, 0x61, 0x76,
-   0x65, 0x00, 0x48, 0x54,  0x54, 0x50, 0x53, 0x65,  0x72, 0x76, 0x65, 0x72,  0x00, 0x67, 0x65, 0x74,
-   0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x00,  0x48, 0x54, 0x54, 0x50,  0x53, 0x65, 0x72, 0x76,
-   0x65, 0x72, 0x5F, 0x67,  0x65, 0x74, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x00, 0x48, 0x54,
-   0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x00, 0x4F, 0x62,  0x6A, 0x65, 0x63, 0x74,
-   0x00, 0x73, 0x65, 0x72,  0x76, 0x65, 0x72, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,
-   0x65, 0x73, 0x74, 0x5F,  0x67, 0x65, 0x74, 0x5F,  0x73, 0x65, 0x72, 0x76,  0x65, 0x72, 0x00, 0x61,
-   0x64, 0x64, 0x50, 0x72,  0x6F, 0x70, 0x65, 0x72,  0x74, 0x79, 0x00, 0x75,  0x72, 0x6C, 0x00, 0x48,
-   0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x67,  0x65, 0x74, 0x5F, 0x75,
-   0x72, 0x6C, 0x00, 0x70,  0x61, 0x74, 0x68, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,
-   0x65, 0x73, 0x74, 0x5F,  0x67, 0x65, 0x74, 0x5F,  0x70, 0x61, 0x74, 0x68,  0x00, 0x68, 0x65, 0x61,
-   0x64, 0x65, 0x72, 0x73,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
-   0x5F, 0x67, 0x65, 0x74,  0x5F, 0x68, 0x65, 0x61,  0x64, 0x65, 0x72, 0x73,  0x00, 0x74, 0x6F, 0x53,
-   0x74, 0x72, 0x69, 0x6E,  0x67, 0x00, 0x48, 0x54,  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,
-   0x74, 0x5F, 0x74, 0x6F,  0x53, 0x74, 0x72, 0x69,  0x6E, 0x67, 0x00, 0x70,  0x75, 0x73, 0x68, 0x00,
-   0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,  0x70, 0x75, 0x73, 0x68,
-   0x00, 0x63, 0x6C, 0x6F,  0x73, 0x65, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,
-   0x73, 0x74, 0x5F, 0x63,  0x6C, 0x6F, 0x73, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x00, 0x61, 0x64,
-   0x76, 0x61, 0x6E, 0x63,  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x61,  0x64, 0x76, 0x61, 0x6E,
-   0x63, 0x65, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x6D, 0x6F, 0x76,  0x65, 0x00, 0x54, 0x65,
-   0x73, 0x74, 0x5F, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x6D, 0x6F, 0x76,  0x65, 0x00, 0x6D, 0x6F,
-   0x75, 0x73, 0x65, 0x5F,  0x70, 0x72, 0x65, 0x73,  0x73, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x6D,
-   0x6F, 0x75, 0x73, 0x65,  0x5F, 0x70, 0x72, 0x65,  0x73, 0x73, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,
-   0x5F, 0x72, 0x65, 0x6C,  0x65, 0x61, 0x73, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,
-   0x75, 0x73, 0x65, 0x5F,  0x72, 0x65, 0x6C, 0x65,  0x61, 0x73, 0x65, 0x00,  0x72, 0x65, 0x6E, 0x64,
-   0x65, 0x72, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,  0x72, 0x65, 0x6E, 0x64,  0x65, 0x72, 0x00, 0x72,
-   0x65, 0x73, 0x65, 0x74,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x72, 0x65,  0x73, 0x65, 0x74, 0x00,
-   0x74, 0x72, 0x61, 0x63,  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x74,  0x72, 0x61, 0x63, 0x65,
-   0x00, 0x72, 0x61, 0x74,  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x67,  0x65, 0x74, 0x5F, 0x72,
-   0x61, 0x74, 0x65, 0x00,  0x70, 0x72, 0x69, 0x6E,  0x74, 0x00, 0x73, 0x00,  0x49, 0x4E, 0x46, 0x4F,
-   0x3A, 0x20, 0x00, 0x65,  0x72, 0x72, 0x6F, 0x72,  0x00, 0x45, 0x52, 0x52,  0x4F, 0x52, 0x3A, 0x20,
-   0x00, 0x96, 0x04, 0x00,  0x08, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x00, 0x4E, 0x1D,
-   0x96, 0x02, 0x00, 0x08,  0x00, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x02, 0x07,  0x00, 0x00, 0x00, 0x00,
-   0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x00, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,
-   0x00, 0x08, 0x03, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x4F, 0x96, 0x02, 0x00,
-   0x08, 0x00, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x05, 0x08, 0x01,
-   0x1C, 0x96, 0x02, 0x00,  0x08, 0x06, 0x4E, 0x4F,  0x96, 0x04, 0x00, 0x08,  0x07, 0x08, 0x01, 0x1C,
-   0x96, 0x02, 0x00, 0x08,  0x07, 0x4E, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x07,  0x1C, 0x96, 0x07, 0x00,
-   0x08, 0x02, 0x07, 0x00,  0x00, 0x00, 0x00, 0x43,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x07, 0x1C, 0x96,
-   0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x08, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
-   0x08, 0x09, 0x4E, 0x4F,  0x96, 0x09, 0x00, 0x08,  0x0A, 0x07, 0x00, 0x00,  0x00, 0x00, 0x08, 0x0B,
-   0x40, 0x1D, 0x96, 0x02,  0x00, 0x08, 0x0A, 0x1C,  0x96, 0x07, 0x00, 0x08,  0x02, 0x07, 0x00, 0x00,
-   0x00, 0x00, 0x43, 0x4F,  0x96, 0x03, 0x00, 0x02,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x0D,
-   0x4E, 0x96, 0x09, 0x00,  0x08, 0x0C, 0x07, 0x03,  0x00, 0x00, 0x00, 0x08,  0x0A, 0x1C, 0x96, 0x02,
-   0x00, 0x08, 0x02, 0x4E,  0x96, 0x02, 0x00, 0x08,  0x0E, 0x52, 0x17, 0x96,  0x03, 0x00, 0x02, 0x08,
-   0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x10, 0x4E,  0x96, 0x09, 0x00, 0x08,  0x0F, 0x07, 0x03, 0x00,
-   0x00, 0x00, 0x08, 0x0A,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x0E,
-   0x52, 0x17, 0x96, 0x03,  0x00, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x12, 0x4E, 0x96,
-   0x09, 0x00, 0x08, 0x11,  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0A, 0x1C,  0x96, 0x02, 0x00, 0x08,
-   0x02, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x0E, 0x52,  0x17, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,
-   0x96, 0x02, 0x00, 0x08,  0x14, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x13, 0x07,  0x03, 0x00, 0x00, 0x00,
-   0x08, 0x0A, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x0E, 0x52, 0x17,
-   0x96, 0x02, 0x00, 0x08,  0x0A, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,
-   0x15, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x16, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0A,
-   0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x17,  0x08, 0x01, 0x1C, 0x96,
-   0x02, 0x00, 0x08, 0x18,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x0A, 0x1C,  0x96, 0x02, 0x00, 0x08,
-   0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x19, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1A, 0x4E,
-   0x4F, 0x96, 0x04, 0x00,  0x08, 0x1B, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x1B, 0x4E, 0x1D,
-   0x96, 0x02, 0x00, 0x08,  0x1B, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x02, 0x07,  0x00, 0x00, 0x00, 0x00,
-   0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x1B, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,
-   0x00, 0x08, 0x1C, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1D, 0x4E,  0x4F, 0x96, 0x02, 0x00,
-   0x08, 0x1B, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x1E, 0x08, 0x01,
-   0x1C, 0x96, 0x02, 0x00,  0x08, 0x1F, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x1B, 0x1C, 0x96, 0x02,
-   0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x20, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
-   0x21, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x1B,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,
-   0x04, 0x00, 0x08, 0x22,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x23,  0x4E, 0x4F, 0x96, 0x02,
-   0x00, 0x08, 0x1B, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x24, 0x08,
-   0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x25, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x1B, 0x1C, 0x96,
-   0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x26, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
-   0x08, 0x27, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x1B, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,
-   0x96, 0x04, 0x00, 0x08,  0x28, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x29, 0x4E, 0x4F, 0x96,
-   0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2B, 0x4E,  0x96, 0x09, 0x00, 0x08,
-   0x2A, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x1B,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,
-   0x02, 0x00, 0x08, 0x0E,  0x52, 0x17, 0x96, 0x02,  0x00, 0x08, 0x2C, 0x8E,  0x0B, 0x00, 0x00, 0x01,
-   0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,  0x00, 0x96, 0x02, 0x00,  0x08, 0x2D, 0x1C, 0x12,
-   0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,  0x08, 0x2E, 0x08, 0x2D,  0x1C, 0x47, 0x96, 0x07,
-   0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x2C, 0x52, 0x17,
-   0x1D, 0x96, 0x02, 0x00,  0x08, 0x2F, 0x8E, 0x0B,  0x00, 0x00, 0x01, 0x00,  0x00, 0x00, 0x00, 0x00,
-   0x73, 0x00, 0x27, 0x00,  0x96, 0x02, 0x00, 0x08,  0x2D, 0x1C, 0x12, 0x9D,  0x02, 0x00, 0x1B, 0x00,
-   0x96, 0x04, 0x00, 0x08,  0x30, 0x08, 0x2D, 0x1C,  0x47, 0x96, 0x07, 0x00,  0x07, 0x01, 0x00, 0x00,
-   0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x2C, 0x52, 0x17, 0x1D,  0x00
 -  0x88, 0x6E, 0x01, 0x26,  0x00, 0x42, 0x75, 0x66,  0x66, 0x65, 0x72, 0x00,  0x4E, 0x61, 0x74, 0x69,
++  0x88, 0x69, 0x02, 0x39,  0x00, 0x42, 0x75, 0x66,  0x66, 0x65, 0x72, 0x00,  0x4E, 0x61, 0x74, 0x69,
+   0x76, 0x65, 0x00, 0x6C,  0x6F, 0x61, 0x64, 0x00,  0x42, 0x75, 0x66, 0x66,  0x65, 0x72, 0x5F, 0x6C,
+   0x6F, 0x61, 0x64, 0x00,  0x70, 0x72, 0x6F, 0x74,  0x6F, 0x74, 0x79, 0x70,  0x65, 0x00, 0x64, 0x69,
+   0x66, 0x66, 0x00, 0x42,  0x75, 0x66, 0x66, 0x65,  0x72, 0x5F, 0x64, 0x69,  0x66, 0x66, 0x00, 0x49,
+   0x6D, 0x61, 0x67, 0x65,  0x00, 0x63, 0x6F, 0x6D,  0x70, 0x61, 0x72, 0x65,  0x00, 0x49, 0x6D, 0x61,
+   0x67, 0x65, 0x5F, 0x63,  0x6F, 0x6D, 0x70, 0x61,  0x72, 0x65, 0x00, 0x73,  0x61, 0x76, 0x65, 0x00,
 -  0x49, 0x6D, 0x61, 0x67,  0x65, 0x5F, 0x73, 0x61,  0x76, 0x65, 0x00, 0x53,  0x6F, 0x63, 0x6B, 0x65,
 -  0x74, 0x00, 0x70, 0x72,  0x6F, 0x63, 0x65, 0x73,  0x73, 0x00, 0x53, 0x6F,  0x63, 0x6B, 0x65, 0x74,
 -  0x5F, 0x70, 0x72, 0x6F,  0x63, 0x65, 0x73, 0x73,  0x00, 0x54, 0x65, 0x73,  0x74, 0x00, 0x61, 0x64,
 -  0x76, 0x61, 0x6E, 0x63,  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x61,  0x64, 0x76, 0x61, 0x6E,
 -  0x63, 0x65, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x6D, 0x6F, 0x76,  0x65, 0x00, 0x54, 0x65,
 -  0x73, 0x74, 0x5F, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x6D, 0x6F, 0x76,  0x65, 0x00, 0x6D, 0x6F,
 -  0x75, 0x73, 0x65, 0x5F,  0x70, 0x72, 0x65, 0x73,  0x73, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x6D,
 -  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x70, 0x72, 0x65,  0x73, 0x73, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,
 -  0x5F, 0x72, 0x65, 0x6C,  0x65, 0x61, 0x73, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,
 -  0x75, 0x73, 0x65, 0x5F,  0x72, 0x65, 0x6C, 0x65,  0x61, 0x73, 0x65, 0x00,  0x72, 0x65, 0x6E, 0x64,
 -  0x65, 0x72, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,  0x72, 0x65, 0x6E, 0x64,  0x65, 0x72, 0x00, 0x72,
 -  0x65, 0x73, 0x65, 0x74,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x72, 0x65,  0x73, 0x65, 0x74, 0x00,
 -  0x72, 0x61, 0x74, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x72, 0x61,
 -  0x74, 0x65, 0x00, 0x61,  0x64, 0x64, 0x50, 0x72,  0x6F, 0x70, 0x65, 0x72,  0x74, 0x79, 0x00, 0x74,
 -  0x72, 0x61, 0x63, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x74, 0x72,
 -  0x61, 0x63, 0x65, 0x00,  0x70, 0x72, 0x69, 0x6E,  0x74, 0x00, 0x73, 0x00,  0x49, 0x4E, 0x46, 0x4F,
 -  0x3A, 0x20, 0x00, 0x65,  0x72, 0x72, 0x6F, 0x72,  0x00, 0x45, 0x52, 0x52,  0x4F, 0x52, 0x3A, 0x20,
 -  0x00, 0x96, 0x04, 0x00,  0x08, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x00, 0x4E, 0x1D,
 -  0x96, 0x02, 0x00, 0x08,  0x00, 0x1C, 0x96, 0x04,  0x00, 0x08, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,
 -  0x00, 0x08, 0x03, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x00, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,
 -  0x07, 0x00, 0x00, 0x00,  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x00,  0x1C, 0x96, 0x02, 0x00,
 -  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x05,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x06,
 -  0x4E, 0x4F, 0x96, 0x04,  0x00, 0x08, 0x07, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x07, 0x4E,
 -  0x1D, 0x96, 0x02, 0x00,  0x08, 0x07, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x04,  0x07, 0x00, 0x00, 0x00,
 -  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x07,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,
 -  0x04, 0x00, 0x08, 0x08,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x09,  0x4E, 0x4F, 0x96, 0x02,
 -  0x00, 0x08, 0x07, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x0A, 0x08,
 -  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x0B, 0x4E,  0x4F, 0x96, 0x04, 0x00,  0x08, 0x0C, 0x08, 0x01,
 -  0x1C, 0x96, 0x02, 0x00,  0x08, 0x0C, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,  0x0C, 0x1C, 0x96, 0x07,
 -  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x0C, 0x1C,
 -  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x0D, 0x08,  0x01, 0x1C, 0x96, 0x02,
 -  0x00, 0x08, 0x0E, 0x4E,  0x4F, 0x96, 0x04, 0x00,  0x08, 0x0F, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
 -  0x08, 0x0F, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x04, 0x07,
 -  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,
 -  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x10, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x11, 0x4E,
 -  0x4F, 0x96, 0x02, 0x00,  0x08, 0x0F, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,
 -  0x08, 0x12, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x13, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,
 -  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x14, 0x08, 0x01, 0x1C,
 -  0x96, 0x02, 0x00, 0x08,  0x15, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x02, 0x00,
 -  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x16,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x17,
++  0x49, 0x6D, 0x61, 0x67,  0x65, 0x5F, 0x73, 0x61,  0x76, 0x65, 0x00, 0x48,  0x54, 0x54, 0x50, 0x53,
++  0x65, 0x72, 0x76, 0x65,  0x72, 0x00, 0x67, 0x65,  0x74, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
++  0x00, 0x48, 0x54, 0x54,  0x50, 0x53, 0x65, 0x72,  0x76, 0x65, 0x72, 0x5F,  0x67, 0x65, 0x74, 0x52,
++  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,
++  0x73, 0x74, 0x00, 0x4F,  0x62, 0x6A, 0x65, 0x63,  0x74, 0x00, 0x73, 0x65,  0x72, 0x76, 0x65, 0x72,
++  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,
++  0x5F, 0x73, 0x65, 0x72,  0x76, 0x65, 0x72, 0x00,  0x61, 0x64, 0x64, 0x50,  0x72, 0x6F, 0x70, 0x65,
++  0x72, 0x74, 0x79, 0x00,  0x75, 0x72, 0x6C, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,
++  0x65, 0x73, 0x74, 0x5F,  0x67, 0x65, 0x74, 0x5F,  0x75, 0x72, 0x6C, 0x00,  0x70, 0x61, 0x74, 0x68,
++  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,
++  0x5F, 0x70, 0x61, 0x74,  0x68, 0x00, 0x68, 0x65,  0x61, 0x64, 0x65, 0x72,  0x73, 0x00, 0x48, 0x54,
++  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x68, 0x65,
++  0x61, 0x64, 0x65, 0x72,  0x73, 0x00, 0x74, 0x6F,  0x53, 0x74, 0x72, 0x69,  0x6E, 0x67, 0x00, 0x48,
++  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x74,  0x6F, 0x53, 0x74, 0x72,
++  0x69, 0x6E, 0x67, 0x00,  0x70, 0x75, 0x73, 0x68,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,
++  0x75, 0x65, 0x73, 0x74,  0x5F, 0x70, 0x75, 0x73,  0x68, 0x00, 0x63, 0x6C,  0x6F, 0x73, 0x65, 0x00,
++  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,  0x63, 0x6C, 0x6F, 0x73,
++  0x65, 0x00, 0x53, 0x6F,  0x63, 0x6B, 0x65, 0x74,  0x00, 0x70, 0x72, 0x6F,  0x63, 0x65, 0x73, 0x73,
++  0x00, 0x53, 0x6F, 0x63,  0x6B, 0x65, 0x74, 0x5F,  0x70, 0x72, 0x6F, 0x63,  0x65, 0x73, 0x73, 0x00,
++  0x54, 0x65, 0x73, 0x74,  0x00, 0x61, 0x64, 0x76,  0x61, 0x6E, 0x63, 0x65,  0x00, 0x54, 0x65, 0x73,
++  0x74, 0x5F, 0x61, 0x64,  0x76, 0x61, 0x6E, 0x63,  0x65, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
++  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
++  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x6D, 0x6F, 0x75,  0x73, 0x65, 0x5F, 0x70,  0x72, 0x65, 0x73, 0x73,
++  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,  0x70, 0x72, 0x65, 0x73,
++  0x73, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,  0x72, 0x65, 0x6C, 0x65,  0x61, 0x73, 0x65, 0x00,
++  0x54, 0x65, 0x73, 0x74,  0x5F, 0x6D, 0x6F, 0x75,  0x73, 0x65, 0x5F, 0x72,  0x65, 0x6C, 0x65, 0x61,
++  0x73, 0x65, 0x00, 0x72,  0x65, 0x6E, 0x64, 0x65,  0x72, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x72,
++  0x65, 0x6E, 0x64, 0x65,  0x72, 0x00, 0x72, 0x65,  0x73, 0x65, 0x74, 0x00,  0x54, 0x65, 0x73, 0x74,
++  0x5F, 0x72, 0x65, 0x73,  0x65, 0x74, 0x00, 0x72,  0x61, 0x74, 0x65, 0x00,  0x54, 0x65, 0x73, 0x74,
++  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x72, 0x61, 0x74,  0x65, 0x00, 0x74, 0x72,  0x61, 0x63, 0x65, 0x00,
++  0x54, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x74, 0x72, 0x61,  0x63, 0x65, 0x00, 0x70,
++  0x72, 0x69, 0x6E, 0x74,  0x00, 0x73, 0x00, 0x49,  0x4E, 0x46, 0x4F, 0x3A,  0x20, 0x00, 0x65, 0x72,
++  0x72, 0x6F, 0x72, 0x00,  0x45, 0x52, 0x52, 0x4F,  0x52, 0x3A, 0x20, 0x00,  0x96, 0x04, 0x00, 0x08,
++  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x00, 0x4E, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x00,
++  0x1C, 0x96, 0x04, 0x00,  0x08, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x03, 0x4E, 0x4F,
++  0x96, 0x02, 0x00, 0x08,  0x00, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,
++  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x00, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,
++  0x00, 0x08, 0x05, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x06, 0x4E,  0x4F, 0x96, 0x04, 0x00,
++  0x08, 0x07, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x07, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,
++  0x07, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,
++  0x00, 0x08, 0x07, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x08, 0x08,
++  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x09, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x07, 0x1C, 0x96,
++  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x0A, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
++  0x08, 0x0B, 0x4E, 0x4F,  0x96, 0x04, 0x00, 0x08,  0x0C, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
++  0x0C, 0x4E, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x0C,  0x1C, 0x96, 0x07, 0x00,  0x08, 0x04, 0x07, 0x00,
++  0x00, 0x00, 0x00, 0x43,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x0C, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,
++  0x4E, 0x96, 0x04, 0x00,  0x08, 0x0D, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x0E, 0x4E, 0x4F,
++  0x96, 0x09, 0x00, 0x08,  0x0F, 0x07, 0x00, 0x00,  0x00, 0x00, 0x08, 0x10,  0x40, 0x1D, 0x96, 0x02,
++  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x07, 0x00, 0x08,  0x04, 0x07, 0x00, 0x00,  0x00, 0x00, 0x43, 0x4F,
++  0x96, 0x03, 0x00, 0x02,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x12,  0x4E, 0x96, 0x09, 0x00,
++  0x08, 0x11, 0x07, 0x03,  0x00, 0x00, 0x00, 0x08,  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,
++  0x96, 0x02, 0x00, 0x08,  0x13, 0x52, 0x17, 0x96,  0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,
++  0x00, 0x08, 0x15, 0x4E,  0x96, 0x09, 0x00, 0x08,  0x14, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x0F,
++  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x13,  0x52, 0x17, 0x96, 0x03,
++  0x00, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x17, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x16,
++  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x02,
++  0x00, 0x08, 0x13, 0x52,  0x17, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
++  0x19, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x18, 0x07,  0x03, 0x00, 0x00, 0x00,  0x08, 0x0F, 0x1C, 0x96,
++  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x13, 0x52, 0x17,  0x96, 0x02, 0x00, 0x08,
++  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x1A, 0x08, 0x01, 0x1C,
++  0x96, 0x02, 0x00, 0x08,  0x1B, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x02, 0x00,
++  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x1C,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1D,
+   0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x0F, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,
 -  0x00, 0x08, 0x18, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x19, 0x4E,  0x4F, 0x96, 0x02, 0x00,
 -  0x08, 0x0F, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x1A, 0x08, 0x01,
 -  0x1C, 0x96, 0x02, 0x00,  0x08, 0x1B, 0x4E, 0x4F,  0x96, 0x03, 0x00, 0x02,  0x08, 0x01, 0x1C, 0x96,
 -  0x02, 0x00, 0x08, 0x1D,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x1C, 0x07, 0x03,  0x00, 0x00, 0x00, 0x08,
 -  0x0F, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,  0x1E, 0x52, 0x17, 0x96,
 -  0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x20, 0x4E,  0x96, 0x09, 0x00, 0x08,
 -  0x1F, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x0F,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,
 -  0x02, 0x00, 0x08, 0x1E,  0x52, 0x17, 0x96, 0x02,  0x00, 0x08, 0x21, 0x8E,  0x0B, 0x00, 0x00, 0x01,
 -  0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,  0x00, 0x96, 0x02, 0x00,  0x08, 0x22, 0x1C, 0x12,
 -  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,  0x08, 0x23, 0x08, 0x22,  0x1C, 0x47, 0x96, 0x07,
 -  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x21, 0x52, 0x17,
 -  0x1D, 0x96, 0x02, 0x00,  0x08, 0x24, 0x8E, 0x0B,  0x00, 0x00, 0x01, 0x00,  0x00, 0x00, 0x00, 0x00,
 -  0x73, 0x00, 0x27, 0x00,  0x96, 0x02, 0x00, 0x08,  0x22, 0x1C, 0x12, 0x9D,  0x02, 0x00, 0x1B, 0x00,
 -  0x96, 0x04, 0x00, 0x08,  0x25, 0x08, 0x22, 0x1C,  0x47, 0x96, 0x07, 0x00,  0x07, 0x01, 0x00, 0x00,
 -  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x21, 0x52, 0x17, 0x1D,  0x00
++  0x00, 0x08, 0x1E, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1F, 0x4E,  0x4F, 0x96, 0x04, 0x00,
++  0x08, 0x20, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x20, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,
++  0x20, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,
++  0x00, 0x08, 0x20, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x21, 0x08,
++  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x22, 0x4E,  0x4F, 0x96, 0x04, 0x00,  0x08, 0x23, 0x08, 0x01,
++  0x1C, 0x96, 0x02, 0x00,  0x08, 0x23, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,  0x23, 0x1C, 0x96, 0x07,
++  0x00, 0x08, 0x04, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x23, 0x1C,
++  0x96, 0x02, 0x00, 0x08,  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x24, 0x08,  0x01, 0x1C, 0x96, 0x02,
++  0x00, 0x08, 0x25, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x23, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,
++  0x4E, 0x96, 0x04, 0x00,  0x08, 0x26, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x27, 0x4E, 0x4F,
++  0x96, 0x02, 0x00, 0x08,  0x23, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x04, 0x00, 0x08,
++  0x28, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x29, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x23,
++  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x2A,  0x08, 0x01, 0x1C, 0x96,
++  0x02, 0x00, 0x08, 0x2B,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x23, 0x1C,  0x96, 0x02, 0x00, 0x08,
++  0x04, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x2C, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2D, 0x4E,
++  0x4F, 0x96, 0x02, 0x00,  0x08, 0x23, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,  0x4E, 0x96, 0x04, 0x00,
++  0x08, 0x2E, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x2F, 0x4E, 0x4F,  0x96, 0x03, 0x00, 0x02,
++  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x31,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x30, 0x07, 0x03,
++  0x00, 0x00, 0x00, 0x08,  0x23, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x96, 0x02, 0x00, 0x08,
++  0x13, 0x52, 0x17, 0x96,  0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x33, 0x4E,
++  0x96, 0x09, 0x00, 0x08,  0x32, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x23,  0x1C, 0x96, 0x02, 0x00,
++  0x08, 0x04, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x13,  0x52, 0x17, 0x96, 0x02,  0x00, 0x08, 0x34, 0x8E,
++  0x0B, 0x00, 0x00, 0x01,  0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,  0x00, 0x96, 0x02, 0x00,
++  0x08, 0x35, 0x1C, 0x12,  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,  0x08, 0x36, 0x08, 0x35,
++  0x1C, 0x47, 0x96, 0x07,  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
++  0x08, 0x34, 0x52, 0x17,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x37, 0x8E, 0x0B,  0x00, 0x00, 0x01, 0x00,
++  0x00, 0x00, 0x00, 0x00,  0x73, 0x00, 0x27, 0x00,  0x96, 0x02, 0x00, 0x08,  0x35, 0x1C, 0x12, 0x9D,
++  0x02, 0x00, 0x1B, 0x00,  0x96, 0x04, 0x00, 0x08,  0x38, 0x08, 0x35, 0x1C,  0x47, 0x96, 0x07, 0x00,
++  0x07, 0x01, 0x00, 0x00,  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x34, 0x52, 0x17, 0x1D,
++  0x00
  };
  
commit ec810576d1f88a3bb7ac61c4d934a93e2a757a6e
Merge: 5d60f67... 3f4498b...
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 13:22:08 2008 +0200

    Merge branch 'master' of ssh://medar@git.freedesktop.org/git/swfdec/swfdec

commit 5d60f671a970d34bca30baab67ad0dd695e6a2d0
Merge: f016461... 607f3ee...
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 13:10:02 2008 +0200

    Merge branch 'master' of ssh://medar@git.freedesktop.org/git/swfdec/swfdec

commit f0164613dc0faa58df1cb1b2426cefa7a6516287
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 13:07:10 2008 +0200

    Fix couple of bugs in HTTPRequest and add headers property

diff --git a/test/swfdec_test_http_request.c b/test/swfdec_test_http_request.c
index 7c5b66a..9c204a1 100644
--- a/test/swfdec_test_http_request.c
+++ b/test/swfdec_test_http_request.c
@@ -79,6 +79,7 @@ swfdec_test_http_request_mark (SwfdecAsObject *object)
   SwfdecTestHTTPRequest *request = SWFDEC_TEST_HTTP_REQUEST (object);
 
   swfdec_as_object_mark (SWFDEC_AS_OBJECT (request->server));
+  swfdec_as_object_mark (SWFDEC_AS_OBJECT (request->headers));
 
   SWFDEC_AS_OBJECT_CLASS (swfdec_test_http_request_parent_class)->mark (object);
 }
@@ -119,8 +120,6 @@ swfdec_test_http_request_toString (SwfdecAsContext *cx, SwfdecAsObject *object,
 
   SWFDEC_AS_VALUE_SET_STRING (retval,
       swfdec_as_context_give_string (cx, g_string_free (string, FALSE)));
-
-  soup_uri_free (uri);
 }
 
 SWFDEC_TEST_FUNCTION ("HTTPRequest_get_server", swfdec_test_http_request_get_server, 0)
@@ -150,8 +149,6 @@ swfdec_test_http_request_get_url (SwfdecAsContext *cx, SwfdecAsObject *object,
 
   SWFDEC_AS_VALUE_SET_STRING (retval,
       swfdec_as_context_give_string (cx, soup_uri_to_string (uri, FALSE)));
-
-  soup_uri_free (uri);
 }
 
 SWFDEC_TEST_FUNCTION ("HTTPRequest_get_path", swfdec_test_http_request_get_path, 0)
@@ -168,8 +165,42 @@ swfdec_test_http_request_get_path (SwfdecAsContext *cx, SwfdecAsObject *object,
 
   SWFDEC_AS_VALUE_SET_STRING (retval,
       swfdec_as_context_give_string (cx, soup_uri_to_string (uri, TRUE)));
+}
+
+static void
+swfdec_test_http_request_foreach_set_headers (const char *name,
+    const char *value, gpointer user_data)
+{
+  SwfdecTestHTTPRequest *request = user_data;
+  SwfdecAsContext *cx;
+  SwfdecAsValue val;
+
+  g_return_if_fail (SWFDEC_IS_AS_OBJECT (request->headers));
+
+  cx = request->headers->context;
+
+  SWFDEC_AS_VALUE_SET_STRING (&val, swfdec_as_context_get_string (cx, value));
+  swfdec_as_object_set_variable (request->headers,
+      swfdec_as_context_get_string (cx, name), &val);
+}
+
+SWFDEC_TEST_FUNCTION ("HTTPRequest_get_headers", swfdec_test_http_request_get_headers, 0)
+void
+swfdec_test_http_request_get_headers (SwfdecAsContext *cx,
+    SwfdecAsObject *object, guint argc, SwfdecAsValue *argv,
+    SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPRequest *request;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "");
+
+  if (!request->headers) {
+    request->headers = swfdec_as_object_new_empty (cx);
+    soup_message_headers_foreach (request->message->request_headers,
+	swfdec_test_http_request_foreach_set_headers, request);
+  }
 
-  soup_uri_free (uri);
+  SWFDEC_AS_VALUE_SET_OBJECT (retval, request->headers);
 }
 
 SWFDEC_TEST_FUNCTION ("HTTPRequest_push", swfdec_test_http_request_push, 0)
diff --git a/test/swfdec_test_http_request.h b/test/swfdec_test_http_request.h
index b244c97..e4b08ae 100644
--- a/test/swfdec_test_http_request.h
+++ b/test/swfdec_test_http_request.h
@@ -53,6 +53,8 @@ struct _SwfdecTestHTTPRequest
   SoupMessage *			message;
   gboolean			status_set;
   SwfdecTestHTTPRequestState	state;
+
+  SwfdecAsObject *		headers;
 };
 
 struct _SwfdecTestHTTPRequestClass
diff --git a/test/swfdec_test_initialize.as b/test/swfdec_test_initialize.as
index 4792b80..7f94b83 100644
--- a/test/swfdec_test_initialize.as
+++ b/test/swfdec_test_initialize.as
@@ -28,9 +28,10 @@ HTTPServer.prototype.getRequest = Native.HTTPServer_getRequest;
 
 HTTPRequest = new Object ();
 HTTPRequest.prototype = {};
-HTTPRequest.prototype.addProperty ("server", Native.HTTPRequest_get_server, NULL);
-HTTPRequest.prototype.addProperty ("url", Native.HTTPRequest_get_url, NULL);
-HTTPRequest.prototype.addProperty ("path", Native.HTTPRequest_get_path, NULL);
+HTTPRequest.prototype.addProperty ("server", Native.HTTPRequest_get_server, null);
+HTTPRequest.prototype.addProperty ("url", Native.HTTPRequest_get_url, null);
+HTTPRequest.prototype.addProperty ("path", Native.HTTPRequest_get_path, null);
+HTTPRequest.prototype.addProperty ("headers", Native.HTTPRequest_get_headers, null);
 HTTPRequest.prototype.toString = Native.HTTPRequest_toString;
 HTTPRequest.prototype.push = Native.HTTPRequest_push;
 HTTPRequest.prototype.close = Native.HTTPRequest_close;
diff --git a/test/swfdec_test_initialize.h b/test/swfdec_test_initialize.h
index 4587116..9b6c0c8 100644
--- a/test/swfdec_test_initialize.h
+++ b/test/swfdec_test_initialize.h
@@ -2,7 +2,7 @@
 
 /* compiled from swfdec_test_initialize.as */
 static const unsigned char swfdec_test_initialize[] = {
-  0x88, 0x03, 0x02, 0x30,  0x00, 0x49, 0x6D, 0x61,  0x67, 0x65, 0x00, 0x4E,  0x61, 0x74, 0x69, 0x76,
+  0x88, 0x1E, 0x02, 0x31,  0x00, 0x49, 0x6D, 0x61,  0x67, 0x65, 0x00, 0x4E,  0x61, 0x74, 0x69, 0x76,
   0x65, 0x00, 0x70, 0x72,  0x6F, 0x74, 0x6F, 0x74,  0x79, 0x70, 0x65, 0x00,  0x63, 0x6F, 0x6D, 0x70,
   0x61, 0x72, 0x65, 0x00,  0x49, 0x6D, 0x61, 0x67,  0x65, 0x5F, 0x63, 0x6F,  0x6D, 0x70, 0x61, 0x72,
   0x65, 0x00, 0x73, 0x61,  0x76, 0x65, 0x00, 0x49,  0x6D, 0x61, 0x67, 0x65,  0x5F, 0x73, 0x61, 0x76,
@@ -11,77 +11,80 @@ static const unsigned char swfdec_test_initialize[] = {
   0x65, 0x72, 0x5F, 0x67,  0x65, 0x74, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x00, 0x48, 0x54,
   0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x00, 0x4F, 0x62,  0x6A, 0x65, 0x63, 0x74,
   0x00, 0x73, 0x65, 0x72,  0x76, 0x65, 0x72, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,
-  0x65, 0x73, 0x74, 0x5F,  0x67, 0x65, 0x74, 0x5F,  0x73, 0x65, 0x72, 0x76,  0x65, 0x72, 0x00, 0x4E,
-  0x55, 0x4C, 0x4C, 0x00,  0x61, 0x64, 0x64, 0x50,  0x72, 0x6F, 0x70, 0x65,  0x72, 0x74, 0x79, 0x00,
-  0x75, 0x72, 0x6C, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,
-  0x67, 0x65, 0x74, 0x5F,  0x75, 0x72, 0x6C, 0x00,  0x70, 0x61, 0x74, 0x68,  0x00, 0x48, 0x54, 0x54,
-  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x70, 0x61, 0x74,
-  0x68, 0x00, 0x74, 0x6F,  0x53, 0x74, 0x72, 0x69,  0x6E, 0x67, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,
-  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x74,  0x6F, 0x53, 0x74, 0x72,  0x69, 0x6E, 0x67, 0x00,
-  0x70, 0x75, 0x73, 0x68,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
-  0x5F, 0x70, 0x75, 0x73,  0x68, 0x00, 0x63, 0x6C,  0x6F, 0x73, 0x65, 0x00,  0x48, 0x54, 0x54, 0x50,
-  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,  0x63, 0x6C, 0x6F, 0x73,  0x65, 0x00, 0x54, 0x65,
-  0x73, 0x74, 0x00, 0x61,  0x64, 0x76, 0x61, 0x6E,  0x63, 0x65, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,
-  0x61, 0x64, 0x76, 0x61,  0x6E, 0x63, 0x65, 0x00,  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x6D, 0x6F,
-  0x76, 0x65, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x6D, 0x6F,
-  0x76, 0x65, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x70, 0x72, 0x65,  0x73, 0x73, 0x00, 0x54,
-  0x65, 0x73, 0x74, 0x5F,  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x70, 0x72,  0x65, 0x73, 0x73, 0x00,
-  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x72, 0x65,  0x6C, 0x65, 0x61, 0x73,  0x65, 0x00, 0x54, 0x65,
-  0x73, 0x74, 0x5F, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x72, 0x65, 0x6C,  0x65, 0x61, 0x73, 0x65,
-  0x00, 0x72, 0x65, 0x6E,  0x64, 0x65, 0x72, 0x00,  0x54, 0x65, 0x73, 0x74,  0x5F, 0x72, 0x65, 0x6E,
-  0x64, 0x65, 0x72, 0x00,  0x72, 0x65, 0x73, 0x65,  0x74, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x72,
-  0x65, 0x73, 0x65, 0x74,  0x00, 0x74, 0x72, 0x61,  0x63, 0x65, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,
-  0x74, 0x72, 0x61, 0x63,  0x65, 0x00, 0x72, 0x61,  0x74, 0x65, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,
-  0x67, 0x65, 0x74, 0x5F,  0x72, 0x61, 0x74, 0x65,  0x00, 0x70, 0x72, 0x69,  0x6E, 0x74, 0x00, 0x73,
-  0x00, 0x49, 0x4E, 0x46,  0x4F, 0x3A, 0x20, 0x00,  0x65, 0x72, 0x72, 0x6F,  0x72, 0x00, 0x45, 0x52,
-  0x52, 0x4F, 0x52, 0x3A,  0x20, 0x00, 0x96, 0x04,  0x00, 0x08, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x00, 0x4E,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x00, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x02,
-  0x07, 0x00, 0x00, 0x00,  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x00,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x03,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,
-  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x00, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,
-  0x00, 0x08, 0x05, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x06, 0x4E,  0x4F, 0x96, 0x04, 0x00,
-  0x08, 0x07, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x07, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,
-  0x07, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x02, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,
-  0x00, 0x08, 0x07, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x08, 0x08,
-  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x09, 0x4E,  0x4F, 0x96, 0x09, 0x00,  0x08, 0x0A, 0x07, 0x00,
-  0x00, 0x00, 0x00, 0x08,  0x0B, 0x40, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x0A,  0x1C, 0x96, 0x07, 0x00,
-  0x08, 0x02, 0x07, 0x00,  0x00, 0x00, 0x00, 0x43,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x0E, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x0D, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x0C,
-  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0A, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x02,
-  0x00, 0x08, 0x0F, 0x52,  0x17, 0x96, 0x02, 0x00,  0x08, 0x0E, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x01,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x11, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x10,  0x07, 0x03, 0x00, 0x00,
-  0x00, 0x08, 0x0A, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x0F, 0x52,
-  0x17, 0x96, 0x02, 0x00,  0x08, 0x0E, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x13, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x12,  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0A, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x0F, 0x52,  0x17, 0x96, 0x02, 0x00,
-  0x08, 0x0A, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x14, 0x08, 0x01,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x15, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x0A, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x16, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x17, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0A,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,
-  0x04, 0x00, 0x08, 0x18,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x19,  0x4E, 0x4F, 0x96, 0x04,
-  0x00, 0x08, 0x1A, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1A, 0x4E,  0x1D, 0x96, 0x02, 0x00,
-  0x08, 0x1A, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x02,  0x07, 0x00, 0x00, 0x00,  0x00, 0x43, 0x4F, 0x96,
-  0x02, 0x00, 0x08, 0x1A,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x1B,
-  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1C,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x1A, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x1D, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x1E, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x1A, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,
-  0x4E, 0x96, 0x04, 0x00,  0x08, 0x1F, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x20, 0x4E, 0x4F,
-  0x96, 0x02, 0x00, 0x08,  0x1A, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,
-  0x21, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x22, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x1A,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x23,  0x08, 0x01, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x24,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x1A, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x25, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x26, 0x4E,
-  0x4F, 0x96, 0x02, 0x00,  0x08, 0x1A, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,
-  0x08, 0x27, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x28, 0x4E, 0x4F,  0x96, 0x03, 0x00, 0x02,
-  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x2A,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x29, 0x07, 0x03,
-  0x00, 0x00, 0x00, 0x08,  0x1A, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x02, 0x00, 0x08,
-  0x0F, 0x52, 0x17, 0x96,  0x02, 0x00, 0x08, 0x2B,  0x8E, 0x0B, 0x00, 0x00,  0x01, 0x00, 0x00, 0x00,
-  0x00, 0x00, 0x73, 0x00,  0x27, 0x00, 0x96, 0x02,  0x00, 0x08, 0x2C, 0x1C,  0x12, 0x9D, 0x02, 0x00,
-  0x1B, 0x00, 0x96, 0x04,  0x00, 0x08, 0x2D, 0x08,  0x2C, 0x1C, 0x47, 0x96,  0x07, 0x00, 0x07, 0x01,
-  0x00, 0x00, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2B, 0x52,  0x17, 0x1D, 0x96, 0x02,
-  0x00, 0x08, 0x2E, 0x8E,  0x0B, 0x00, 0x00, 0x01,  0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,
-  0x00, 0x96, 0x02, 0x00,  0x08, 0x2C, 0x1C, 0x12,  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,
-  0x08, 0x2F, 0x08, 0x2C,  0x1C, 0x47, 0x96, 0x07,  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x2B, 0x52, 0x17,  0x1D, 0x00
+  0x65, 0x73, 0x74, 0x5F,  0x67, 0x65, 0x74, 0x5F,  0x73, 0x65, 0x72, 0x76,  0x65, 0x72, 0x00, 0x61,
+  0x64, 0x64, 0x50, 0x72,  0x6F, 0x70, 0x65, 0x72,  0x74, 0x79, 0x00, 0x75,  0x72, 0x6C, 0x00, 0x48,
+  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x67,  0x65, 0x74, 0x5F, 0x75,
+  0x72, 0x6C, 0x00, 0x70,  0x61, 0x74, 0x68, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,
+  0x65, 0x73, 0x74, 0x5F,  0x67, 0x65, 0x74, 0x5F,  0x70, 0x61, 0x74, 0x68,  0x00, 0x68, 0x65, 0x61,
+  0x64, 0x65, 0x72, 0x73,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
+  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x68, 0x65, 0x61,  0x64, 0x65, 0x72, 0x73,  0x00, 0x74, 0x6F, 0x53,
+  0x74, 0x72, 0x69, 0x6E,  0x67, 0x00, 0x48, 0x54,  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,
+  0x74, 0x5F, 0x74, 0x6F,  0x53, 0x74, 0x72, 0x69,  0x6E, 0x67, 0x00, 0x70,  0x75, 0x73, 0x68, 0x00,
+  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,  0x70, 0x75, 0x73, 0x68,
+  0x00, 0x63, 0x6C, 0x6F,  0x73, 0x65, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,
+  0x73, 0x74, 0x5F, 0x63,  0x6C, 0x6F, 0x73, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x00, 0x61, 0x64,
+  0x76, 0x61, 0x6E, 0x63,  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x61,  0x64, 0x76, 0x61, 0x6E,
+  0x63, 0x65, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x6D, 0x6F, 0x76,  0x65, 0x00, 0x54, 0x65,
+  0x73, 0x74, 0x5F, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x6D, 0x6F, 0x76,  0x65, 0x00, 0x6D, 0x6F,
+  0x75, 0x73, 0x65, 0x5F,  0x70, 0x72, 0x65, 0x73,  0x73, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x6D,
+  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x70, 0x72, 0x65,  0x73, 0x73, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,
+  0x5F, 0x72, 0x65, 0x6C,  0x65, 0x61, 0x73, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,
+  0x75, 0x73, 0x65, 0x5F,  0x72, 0x65, 0x6C, 0x65,  0x61, 0x73, 0x65, 0x00,  0x72, 0x65, 0x6E, 0x64,
+  0x65, 0x72, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,  0x72, 0x65, 0x6E, 0x64,  0x65, 0x72, 0x00, 0x72,
+  0x65, 0x73, 0x65, 0x74,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x72, 0x65,  0x73, 0x65, 0x74, 0x00,
+  0x74, 0x72, 0x61, 0x63,  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x74,  0x72, 0x61, 0x63, 0x65,
+  0x00, 0x72, 0x61, 0x74,  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x67,  0x65, 0x74, 0x5F, 0x72,
+  0x61, 0x74, 0x65, 0x00,  0x70, 0x72, 0x69, 0x6E,  0x74, 0x00, 0x73, 0x00,  0x49, 0x4E, 0x46, 0x4F,
+  0x3A, 0x20, 0x00, 0x65,  0x72, 0x72, 0x6F, 0x72,  0x00, 0x45, 0x52, 0x52,  0x4F, 0x52, 0x3A, 0x20,
+  0x00, 0x96, 0x04, 0x00,  0x08, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x00, 0x4E, 0x1D,
+  0x96, 0x02, 0x00, 0x08,  0x00, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x02, 0x07,  0x00, 0x00, 0x00, 0x00,
+  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x00, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,
+  0x00, 0x08, 0x03, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x04, 0x4E,  0x4F, 0x96, 0x02, 0x00,
+  0x08, 0x00, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x05, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x06, 0x4E, 0x4F,  0x96, 0x04, 0x00, 0x08,  0x07, 0x08, 0x01, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x07, 0x4E, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x07,  0x1C, 0x96, 0x07, 0x00,
+  0x08, 0x02, 0x07, 0x00,  0x00, 0x00, 0x00, 0x43,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x07, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x08, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x09, 0x4E, 0x4F,  0x96, 0x09, 0x00, 0x08,  0x0A, 0x07, 0x00, 0x00,  0x00, 0x00, 0x08, 0x0B,
+  0x40, 0x1D, 0x96, 0x02,  0x00, 0x08, 0x0A, 0x1C,  0x96, 0x07, 0x00, 0x08,  0x02, 0x07, 0x00, 0x00,
+  0x00, 0x00, 0x43, 0x4F,  0x96, 0x03, 0x00, 0x02,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x0D,
+  0x4E, 0x96, 0x09, 0x00,  0x08, 0x0C, 0x07, 0x03,  0x00, 0x00, 0x00, 0x08,  0x0A, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x02, 0x4E,  0x96, 0x02, 0x00, 0x08,  0x0E, 0x52, 0x17, 0x96,  0x03, 0x00, 0x02, 0x08,
+  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x10, 0x4E,  0x96, 0x09, 0x00, 0x08,  0x0F, 0x07, 0x03, 0x00,
+  0x00, 0x00, 0x08, 0x0A,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x0E,
+  0x52, 0x17, 0x96, 0x03,  0x00, 0x02, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x12, 0x4E, 0x96,
+  0x09, 0x00, 0x08, 0x11,  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0A, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x02, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x0E, 0x52,  0x17, 0x96, 0x03, 0x00,  0x02, 0x08, 0x01, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x14, 0x4E, 0x96, 0x09,  0x00, 0x08, 0x13, 0x07,  0x03, 0x00, 0x00, 0x00,
+  0x08, 0x0A, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x02, 0x00,  0x08, 0x0E, 0x52, 0x17,
+  0x96, 0x02, 0x00, 0x08,  0x0A, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,
+  0x15, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x16, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0A,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x17,  0x08, 0x01, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x18,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x0A, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x19, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1A, 0x4E,
+  0x4F, 0x96, 0x04, 0x00,  0x08, 0x1B, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x1B, 0x4E, 0x1D,
+  0x96, 0x02, 0x00, 0x08,  0x1B, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x02, 0x07,  0x00, 0x00, 0x00, 0x00,
+  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x1B, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,
+  0x00, 0x08, 0x1C, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1D, 0x4E,  0x4F, 0x96, 0x02, 0x00,
+  0x08, 0x1B, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x1E, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x1F, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x1B, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x20, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x21, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x1B,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,
+  0x04, 0x00, 0x08, 0x22,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x23,  0x4E, 0x4F, 0x96, 0x02,
+  0x00, 0x08, 0x1B, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x24, 0x08,
+  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x25, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x1B, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x26, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x27, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x1B, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,
+  0x96, 0x04, 0x00, 0x08,  0x28, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x29, 0x4E, 0x4F, 0x96,
+  0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2B, 0x4E,  0x96, 0x09, 0x00, 0x08,
+  0x2A, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x1B,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,
+  0x02, 0x00, 0x08, 0x0E,  0x52, 0x17, 0x96, 0x02,  0x00, 0x08, 0x2C, 0x8E,  0x0B, 0x00, 0x00, 0x01,
+  0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,  0x00, 0x96, 0x02, 0x00,  0x08, 0x2D, 0x1C, 0x12,
+  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,  0x08, 0x2E, 0x08, 0x2D,  0x1C, 0x47, 0x96, 0x07,
+  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x2C, 0x52, 0x17,
+  0x1D, 0x96, 0x02, 0x00,  0x08, 0x2F, 0x8E, 0x0B,  0x00, 0x00, 0x01, 0x00,  0x00, 0x00, 0x00, 0x00,
+  0x73, 0x00, 0x27, 0x00,  0x96, 0x02, 0x00, 0x08,  0x2D, 0x1C, 0x12, 0x9D,  0x02, 0x00, 0x1B, 0x00,
+  0x96, 0x04, 0x00, 0x08,  0x30, 0x08, 0x2D, 0x1C,  0x47, 0x96, 0x07, 0x00,  0x07, 0x01, 0x00, 0x00,
+  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x2C, 0x52, 0x17, 0x1D,  0x00
 };
 
commit 7830ba56d271c06d4398e3b74b415999cf7b30f9
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Fri Feb 1 12:24:01 2008 +0200

    Add state to HTTPRequest to disallow some things after message has been sent

diff --git a/test/swfdec_test_http_request.c b/test/swfdec_test_http_request.c
index 40a76e5..7c5b66a 100644
--- a/test/swfdec_test_http_request.c
+++ b/test/swfdec_test_http_request.c
@@ -50,8 +50,10 @@ swfdec_test_http_request_new (SwfdecAsContext *context,
   if (SWFDEC_AS_VALUE_IS_OBJECT (&val))
     swfdec_as_object_set_constructor (ret, SWFDEC_AS_VALUE_GET_OBJECT (&val));
 
-  SWFDEC_TEST_HTTP_REQUEST (ret)->message = message;
   SWFDEC_TEST_HTTP_REQUEST (ret)->server = server;
+  SWFDEC_TEST_HTTP_REQUEST (ret)->message = message;
+  SWFDEC_TEST_HTTP_REQUEST (ret)->state =
+    SWFDEC_TEST_HTTP_REQUEST_STATE_WAITING;
 
   return ret;
 }
@@ -65,9 +67,6 @@ swfdec_test_http_request_dispose (GObject *object)
 {
   SwfdecTestHTTPRequest *request = SWFDEC_TEST_HTTP_REQUEST (object);
 
-  soup_message_set_status (request->message, SOUP_STATUS_INTERNAL_SERVER_ERROR);
-  soup_server_unpause_message (request->server->server, request->message);
-
   g_object_unref (request->message);
   request->message = NULL;
 
@@ -183,6 +182,9 @@ swfdec_test_http_request_push (SwfdecAsContext *cx, SwfdecAsObject *object,
 
   SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "s", &data);
 
+  if (request->state > SWFDEC_TEST_HTTP_REQUEST_STATE_SENDING)
+    return;
+
   if (!request->status_set) {
     soup_message_set_status (request->message, SOUP_STATUS_OK);
     request->status_set = TRUE;
@@ -193,6 +195,8 @@ swfdec_test_http_request_push (SwfdecAsContext *cx, SwfdecAsObject *object,
   soup_server_unpause_message (request->server->server, request->message);
 
   swfdec_test_http_server_run (request->server);
+
+  request->state = SWFDEC_TEST_HTTP_REQUEST_STATE_SENDING;
 }
 
 SWFDEC_TEST_FUNCTION ("HTTPRequest_close", swfdec_test_http_request_close, 0)
@@ -204,6 +208,9 @@ swfdec_test_http_request_close (SwfdecAsContext *cx, SwfdecAsObject *object,
 
   SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "");
 
+  if (request->state == SWFDEC_TEST_HTTP_REQUEST_STATE_SENT)
+    return;
+
   if (!request->status_set) {
     soup_message_set_status (request->message, SOUP_STATUS_OK);
     request->status_set = TRUE;
@@ -213,4 +220,6 @@ swfdec_test_http_request_close (SwfdecAsContext *cx, SwfdecAsObject *object,
   soup_server_unpause_message (request->server->server, request->message);
 
   swfdec_test_http_server_run (request->server);
+
+  request->state = SWFDEC_TEST_HTTP_REQUEST_STATE_SENT;
 }
diff --git a/test/swfdec_test_http_request.h b/test/swfdec_test_http_request.h
index 3ee2a53..b244c97 100644
--- a/test/swfdec_test_http_request.h
+++ b/test/swfdec_test_http_request.h
@@ -32,6 +32,12 @@ G_BEGIN_DECLS
 typedef struct _SwfdecTestHTTPRequest SwfdecTestHTTPRequest;
 typedef struct _SwfdecTestHTTPRequestClass SwfdecTestHTTPRequestClass;
 
+typedef enum {
+  SWFDEC_TEST_HTTP_REQUEST_STATE_WAITING,
+  SWFDEC_TEST_HTTP_REQUEST_STATE_SENDING,
+  SWFDEC_TEST_HTTP_REQUEST_STATE_SENT
+} SwfdecTestHTTPRequestState;
+
 #define SWFDEC_TYPE_TEST_HTTP_REQUEST                    (swfdec_test_http_request_get_type())
 #define SWFDEC_IS_TEST_HTTP_REQUEST(obj)                 (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWFDEC_TYPE_TEST_HTTP_REQUEST))
 #define SWFDEC_IS_TEST_HTTP_REQUEST_CLASS(klass)         (G_TYPE_CHECK_CLASS_TYPE ((klass), SWFDEC_TYPE_TEST_HTTP_REQUEST))
@@ -46,6 +52,7 @@ struct _SwfdecTestHTTPRequest
   SwfdecTestHTTPServer *	server;
   SoupMessage *			message;
   gboolean			status_set;
+  SwfdecTestHTTPRequestState	state;
 };
 
 struct _SwfdecTestHTTPRequestClass
commit af73f79b0e5e7df40e654a2ea0881d23bcdd23cf
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Thu Jan 31 23:56:30 2008 +0200

    Continue implementing HTTP server for the test system
    
    Progress on HTTPServer class
    Added HTTPRequest class

diff --git a/test/Makefile.am b/test/Makefile.am
index dec3a3f..398f442 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -6,6 +6,7 @@ swfdec_test_sources = \
 	swfdec_test.c \
 	swfdec_test_function.c \
 	swfdec_test_global.c \
+	swfdec_test_http_request.c \
 	swfdec_test_http_server.c \
 	swfdec_test_image.c \
 	swfdec_test_test.c
@@ -26,6 +27,7 @@ EXTRA_DIST = \
 noinst_HEADERS = \
 	swfdec_test_function.h \
 	swfdec_test_function_list.h \
+	swfdec_test_http_request.h \
 	swfdec_test_http_server.h \
 	swfdec_test_image.h \
 	swfdec_test_initialize.h \
diff --git a/test/swfdec_test_function.c b/test/swfdec_test_function.c
index 81e77e6..9c5a510 100644
--- a/test/swfdec_test_function.c
+++ b/test/swfdec_test_function.c
@@ -25,6 +25,7 @@
 #include "swfdec_test_function_list.h"
 
 /* needed by the function list */
+#include "swfdec_test_http_request.h"
 #include "swfdec_test_http_server.h"
 #include "swfdec_test_image.h"
 #include "swfdec_test_test.h"
diff --git a/test/swfdec_test_http_request.c b/test/swfdec_test_http_request.c
new file mode 100644
index 0000000..40a76e5
--- /dev/null
+++ b/test/swfdec_test_http_request.c
@@ -0,0 +1,216 @@
+/* Swfdec
+ * Copyright (C) 2007 Benjamin Otte <otte at gnome.org>
+ *               2008 Pekka Lampila <pekka.lampila at iki.fi>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ * 
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, 
+ * Boston, MA  02110-1301  USA
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <string.h>
+
+#include "swfdec_test_http_request.h"
+#include "swfdec_test_http_server.h"
+#include "swfdec_test_function.h"
+
+SwfdecAsObject *
+swfdec_test_http_request_new (SwfdecAsContext *context,
+    SwfdecTestHTTPServer *server, SoupMessage *message)
+{
+  SwfdecAsValue val;
+  SwfdecAsObject *ret;
+
+  g_return_val_if_fail (SWFDEC_IS_AS_CONTEXT (context), NULL);
+  g_return_val_if_fail (SWFDEC_IS_TEST_HTTP_SERVER (server), NULL);
+  g_return_val_if_fail (SOUP_IS_MESSAGE (message), NULL);
+
+  if (!swfdec_as_context_use_mem (context, sizeof (SwfdecTestHTTPRequest)))
+    return NULL;
+
+  ret = g_object_new (SWFDEC_TYPE_TEST_HTTP_REQUEST, NULL);
+  swfdec_as_object_add (ret, context, sizeof (SwfdecTestHTTPRequest));
+  swfdec_as_object_get_variable (context->global,
+      swfdec_as_context_get_string (context, "HTTPRequest"), &val);
+
+  if (SWFDEC_AS_VALUE_IS_OBJECT (&val))
+    swfdec_as_object_set_constructor (ret, SWFDEC_AS_VALUE_GET_OBJECT (&val));
+
+  SWFDEC_TEST_HTTP_REQUEST (ret)->message = message;
+  SWFDEC_TEST_HTTP_REQUEST (ret)->server = server;
+
+  return ret;
+}
+
+/*** SWFDEC_TEST_HTTP_REQUEST ***/
+
+G_DEFINE_TYPE (SwfdecTestHTTPRequest, swfdec_test_http_request, SWFDEC_TYPE_AS_OBJECT)
+
+static void
+swfdec_test_http_request_dispose (GObject *object)
+{
+  SwfdecTestHTTPRequest *request = SWFDEC_TEST_HTTP_REQUEST (object);
+
+  soup_message_set_status (request->message, SOUP_STATUS_INTERNAL_SERVER_ERROR);
+  soup_server_unpause_message (request->server->server, request->message);
+
+  g_object_unref (request->message);
+  request->message = NULL;
+
+  G_OBJECT_CLASS (swfdec_test_http_request_parent_class)->dispose (object);
+}
+
+static void
+swfdec_test_http_request_mark (SwfdecAsObject *object)
+{
+  SwfdecTestHTTPRequest *request = SWFDEC_TEST_HTTP_REQUEST (object);
+
+  swfdec_as_object_mark (SWFDEC_AS_OBJECT (request->server));
+
+  SWFDEC_AS_OBJECT_CLASS (swfdec_test_http_request_parent_class)->mark (object);
+}
+
+static void
+swfdec_test_http_request_class_init (SwfdecTestHTTPRequestClass *klass)
+{
+  GObjectClass *object_class = G_OBJECT_CLASS (klass);
+  SwfdecAsObjectClass *asobject_class = SWFDEC_AS_OBJECT_CLASS (klass);
+
+  object_class->dispose = swfdec_test_http_request_dispose;
+  asobject_class->mark = swfdec_test_http_request_mark;
+}
+
+static void
+swfdec_test_http_request_init (SwfdecTestHTTPRequest *this)
+{
+}
+
+/*** AS CODE ***/
+
+SWFDEC_TEST_FUNCTION ("HTTPRequest_toString", swfdec_test_http_request_toString, 0)
+void
+swfdec_test_http_request_toString (SwfdecAsContext *cx, SwfdecAsObject *object,
+    guint argc, SwfdecAsValue *argv, SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPRequest *request;
+  GString *string;
+  SoupURI *uri;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "");
+
+  string = g_string_new (request->message->method);
+  string = g_string_append (string, " ");
+
+  uri = soup_message_get_uri (request->message);
+  string = g_string_append (string, soup_uri_to_string (uri, FALSE));
+
+  SWFDEC_AS_VALUE_SET_STRING (retval,
+      swfdec_as_context_give_string (cx, g_string_free (string, FALSE)));
+
+  soup_uri_free (uri);
+}
+
+SWFDEC_TEST_FUNCTION ("HTTPRequest_get_server", swfdec_test_http_request_get_server, 0)
+void
+swfdec_test_http_request_get_server (SwfdecAsContext *cx,
+    SwfdecAsObject *object, guint argc, SwfdecAsValue *argv,
+    SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPRequest *request;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "");
+
+  SWFDEC_AS_VALUE_SET_OBJECT (retval, SWFDEC_AS_OBJECT (request->server));
+}
+
+SWFDEC_TEST_FUNCTION ("HTTPRequest_get_url", swfdec_test_http_request_get_url, 0)
+void
+swfdec_test_http_request_get_url (SwfdecAsContext *cx, SwfdecAsObject *object,
+    guint argc, SwfdecAsValue *argv, SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPRequest *request;
+  SoupURI *uri;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "");
+
+  uri = soup_message_get_uri (request->message);
+
+  SWFDEC_AS_VALUE_SET_STRING (retval,
+      swfdec_as_context_give_string (cx, soup_uri_to_string (uri, FALSE)));
+
+  soup_uri_free (uri);
+}
+
+SWFDEC_TEST_FUNCTION ("HTTPRequest_get_path", swfdec_test_http_request_get_path, 0)
+void
+swfdec_test_http_request_get_path (SwfdecAsContext *cx, SwfdecAsObject *object,
+    guint argc, SwfdecAsValue *argv, SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPRequest *request;
+  SoupURI *uri;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "");
+
+  uri = soup_message_get_uri (request->message);
+
+  SWFDEC_AS_VALUE_SET_STRING (retval,
+      swfdec_as_context_give_string (cx, soup_uri_to_string (uri, TRUE)));
+
+  soup_uri_free (uri);
+}
+
+SWFDEC_TEST_FUNCTION ("HTTPRequest_push", swfdec_test_http_request_push, 0)
+void
+swfdec_test_http_request_push (SwfdecAsContext *cx, SwfdecAsObject *object,
+    guint argc, SwfdecAsValue *argv, SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPRequest *request;
+  const char *data;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "s", &data);
+
+  if (!request->status_set) {
+    soup_message_set_status (request->message, SOUP_STATUS_OK);
+    request->status_set = TRUE;
+  }
+
+  soup_message_body_append (request->message->response_body, SOUP_MEMORY_COPY,
+      data, strlen (data));
+  soup_server_unpause_message (request->server->server, request->message);
+
+  swfdec_test_http_server_run (request->server);
+}
+
+SWFDEC_TEST_FUNCTION ("HTTPRequest_close", swfdec_test_http_request_close, 0)
+void
+swfdec_test_http_request_close (SwfdecAsContext *cx, SwfdecAsObject *object,
+    guint argc, SwfdecAsValue *argv, SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPRequest *request;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_REQUEST, &request, "");
+
+  if (!request->status_set) {
+    soup_message_set_status (request->message, SOUP_STATUS_OK);
+    request->status_set = TRUE;
+  }
+
+  soup_message_body_complete (request->message->response_body);
+  soup_server_unpause_message (request->server->server, request->message);
+
+  swfdec_test_http_server_run (request->server);
+}
diff --git a/test/swfdec_test_http_request.h b/test/swfdec_test_http_request.h
new file mode 100644
index 0000000..3ee2a53
--- /dev/null
+++ b/test/swfdec_test_http_request.h
@@ -0,0 +1,63 @@
+/* Swfdec
+ * Copyright (C) 2007 Benjamin Otte <otte at gnome.org>
+ *               2008 Pekka Lampila <pekka.lampila at iki.fi>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ * 
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, 
+ * Boston, MA  02110-1301  USA
+ */
+
+#ifndef _SWFDEC_TEST_HTTP_REQUEST_H_
+#define _SWFDEC_TEST_HTTP_REQUEST_H_
+
+#include <swfdec/swfdec.h>
+#include <libsoup/soup.h>
+
+#include "swfdec_test_http_server.h"
+
+G_BEGIN_DECLS
+
+
+typedef struct _SwfdecTestHTTPRequest SwfdecTestHTTPRequest;
+typedef struct _SwfdecTestHTTPRequestClass SwfdecTestHTTPRequestClass;
+
+#define SWFDEC_TYPE_TEST_HTTP_REQUEST                    (swfdec_test_http_request_get_type())
+#define SWFDEC_IS_TEST_HTTP_REQUEST(obj)                 (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWFDEC_TYPE_TEST_HTTP_REQUEST))
+#define SWFDEC_IS_TEST_HTTP_REQUEST_CLASS(klass)         (G_TYPE_CHECK_CLASS_TYPE ((klass), SWFDEC_TYPE_TEST_HTTP_REQUEST))
+#define SWFDEC_TEST_HTTP_REQUEST(obj)                    (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWFDEC_TYPE_TEST_HTTP_REQUEST, SwfdecTestHTTPRequest))
+#define SWFDEC_TEST_HTTP_REQUEST_CLASS(klass)            (G_TYPE_CHECK_CLASS_CAST ((klass), SWFDEC_TYPE_TEST_HTTP_REQUEST, SwfdecTestHTTPRequestClass))
+#define SWFDEC_TEST_HTTP_REQUEST_GET_CLASS(obj)          (G_TYPE_INSTANCE_GET_CLASS ((obj), SWFDEC_TYPE_TEST_HTTP_REQUEST, SwfdecTestHTTPRequestClass))
+
+struct _SwfdecTestHTTPRequest
+{
+  SwfdecAsObject		as_object;
+
+  SwfdecTestHTTPServer *	server;
+  SoupMessage *			message;
+  gboolean			status_set;
+};
+
+struct _SwfdecTestHTTPRequestClass
+{
+  SwfdecAsObjectClass	as_object_class;
+};
+
+GType		swfdec_test_http_request_get_type	(void);
+
+SwfdecAsObject *swfdec_test_http_request_new		(SwfdecAsContext *	context,
+							 SwfdecTestHTTPServer *	server,
+							 SoupMessage *		message);
+
+G_END_DECLS
+#endif
diff --git a/test/swfdec_test_http_server.c b/test/swfdec_test_http_server.c
index 839e66c..d6b65be 100644
--- a/test/swfdec_test_http_server.c
+++ b/test/swfdec_test_http_server.c
@@ -1,5 +1,6 @@
 /* Swfdec
  * Copyright (C) 2007 Benjamin Otte <otte at gnome.org>
+ *               2008 Pekka Lampila <pekka.lampila at iki.fi>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -25,18 +26,30 @@
 #include <libsoup/soup.h>
 
 #include "swfdec_test_http_server.h"
+#include "swfdec_test_http_request.h"
 #include "swfdec_test_function.h"
 
 #define SWFDEC_TEST_HTTP_SERVER_IS_VALID(server) ((server)->server)
 
 static void
-swfdec_test_http_server_callback (SoupServer *soup_server, SoupMessage *msg,
-    const char *path, GHashTable *query, SoupClientContext *client,
-    gpointer userdata)
+swfdec_test_http_server_callback (SoupServer *soup_server,
+    SoupMessage *message, const char *path, GHashTable *query,
+    SoupClientContext *client, gpointer userdata)
 {
   SwfdecTestHTTPServer *server = userdata;
 
   g_return_if_fail (server->server == soup_server);
+
+  soup_message_headers_set_encoding (message->response_headers,
+      SOUP_ENCODING_CHUNKED);
+
+  g_queue_push_head (server->messages, g_object_ref (message));
+}
+
+void
+swfdec_test_http_server_run (SwfdecTestHTTPServer *server)
+{
+  while (g_main_context_iteration (server->context, FALSE));
 }
 
 static gboolean
@@ -105,6 +118,7 @@ swfdec_test_http_server_dispose (GObject *object)
 
   if (server->server) {
     soup_server_quit (server->server);
+    g_object_unref (server->server);
     server->server = NULL;
   }
 
@@ -113,6 +127,8 @@ swfdec_test_http_server_dispose (GObject *object)
     server->context = NULL;
   }
 
+  g_queue_free (server->messages);
+
   G_OBJECT_CLASS (swfdec_test_http_server_parent_class)->dispose (object);
 }
 
@@ -125,8 +141,9 @@ swfdec_test_http_server_class_init (SwfdecTestHTTPServerClass *klass)
 }
 
 static void
-swfdec_test_http_server_init (SwfdecTestHTTPServer *this)
+swfdec_test_http_server_init (SwfdecTestHTTPServer *server)
 {
+  server->messages = g_queue_new ();
 }
 
 /*** AS CODE ***/
@@ -146,9 +163,21 @@ swfdec_test_http_server_get_request (SwfdecAsContext *cx,
   if (!SWFDEC_TEST_HTTP_SERVER_IS_VALID (server))
     return;
 
-  g_main_context_iteration (server->context, FALSE);
+  if (g_queue_is_empty (server->messages)) {
+    g_print ("waiting\n");
+    usleep (1000000);
+    g_print ("checking\n");
+    swfdec_test_http_server_run (server);
+  }
+
+  if (!g_queue_is_empty (server->messages)) {
+    SwfdecAsObject *request;
 
-  SWFDEC_AS_VALUE_SET_BOOLEAN (retval, TRUE);
+    request = swfdec_test_http_request_new (cx, server,
+	g_queue_pop_tail (server->messages));
+
+    SWFDEC_AS_VALUE_SET_OBJECT (retval, request);
+  }
 }
 
 SWFDEC_TEST_FUNCTION ("HTTPServer", swfdec_test_http_server_create, swfdec_test_http_server_get_type)
diff --git a/test/swfdec_test_http_server.h b/test/swfdec_test_http_server.h
index 7ec52a4..ad6907d 100644
--- a/test/swfdec_test_http_server.h
+++ b/test/swfdec_test_http_server.h
@@ -1,5 +1,6 @@
 /* Swfdec
  * Copyright (C) 2007 Benjamin Otte <otte at gnome.org>
+ *               2008 Pekka Lampila <pekka.lampila at iki.fi>
  *
  * This library is free software; you can redistribute it and/or
  * modify it under the terms of the GNU Lesser General Public
@@ -44,7 +45,7 @@ struct _SwfdecTestHTTPServer
   SoupServer *		server;
   guint			port;
 
-  SoupMessage *		message;
+  GQueue *		messages;	// SoupMessage **
 };
 
 struct _SwfdecTestHTTPServerClass
@@ -56,6 +57,7 @@ GType		swfdec_test_http_server_get_type	(void);
 
 SwfdecAsObject *swfdec_test_http_server_new		(SwfdecAsContext *	context,
 							 guint			port);
+void		swfdec_test_http_server_run		(SwfdecTestHTTPServer *	server);
 
 G_END_DECLS
 #endif
diff --git a/test/swfdec_test_initialize.as b/test/swfdec_test_initialize.as
index 97bebc8..4792b80 100644
--- a/test/swfdec_test_initialize.as
+++ b/test/swfdec_test_initialize.as
@@ -28,7 +28,10 @@ HTTPServer.prototype.getRequest = Native.HTTPServer_getRequest;
 
 HTTPRequest = new Object ();
 HTTPRequest.prototype = {};
+HTTPRequest.prototype.addProperty ("server", Native.HTTPRequest_get_server, NULL);
 HTTPRequest.prototype.addProperty ("url", Native.HTTPRequest_get_url, NULL);
+HTTPRequest.prototype.addProperty ("path", Native.HTTPRequest_get_path, NULL);
+HTTPRequest.prototype.toString = Native.HTTPRequest_toString;
 HTTPRequest.prototype.push = Native.HTTPRequest_push;
 HTTPRequest.prototype.close = Native.HTTPRequest_close;
 
diff --git a/test/swfdec_test_initialize.h b/test/swfdec_test_initialize.h
index 437b948..4587116 100644
--- a/test/swfdec_test_initialize.h
+++ b/test/swfdec_test_initialize.h
@@ -2,7 +2,7 @@
 
 /* compiled from swfdec_test_initialize.as */
 static const unsigned char swfdec_test_initialize[] = {
-  0x88, 0xAD, 0x01, 0x2A,  0x00, 0x49, 0x6D, 0x61,  0x67, 0x65, 0x00, 0x4E,  0x61, 0x74, 0x69, 0x76,
+  0x88, 0x03, 0x02, 0x30,  0x00, 0x49, 0x6D, 0x61,  0x67, 0x65, 0x00, 0x4E,  0x61, 0x74, 0x69, 0x76,
   0x65, 0x00, 0x70, 0x72,  0x6F, 0x74, 0x6F, 0x74,  0x79, 0x70, 0x65, 0x00,  0x63, 0x6F, 0x6D, 0x70,
   0x61, 0x72, 0x65, 0x00,  0x49, 0x6D, 0x61, 0x67,  0x65, 0x5F, 0x63, 0x6F,  0x6D, 0x70, 0x61, 0x72,
   0x65, 0x00, 0x73, 0x61,  0x76, 0x65, 0x00, 0x49,  0x6D, 0x61, 0x67, 0x65,  0x5F, 0x73, 0x61, 0x76,
@@ -10,66 +10,78 @@ static const unsigned char swfdec_test_initialize[] = {
   0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x00,  0x48, 0x54, 0x54, 0x50,  0x53, 0x65, 0x72, 0x76,
   0x65, 0x72, 0x5F, 0x67,  0x65, 0x74, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x00, 0x48, 0x54,
   0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x00, 0x4F, 0x62,  0x6A, 0x65, 0x63, 0x74,
-  0x00, 0x75, 0x72, 0x6C,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
-  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x75, 0x72, 0x6C,  0x00, 0x4E, 0x55, 0x4C,  0x4C, 0x00, 0x61, 0x64,
-  0x64, 0x50, 0x72, 0x6F,  0x70, 0x65, 0x72, 0x74,  0x79, 0x00, 0x70, 0x75,  0x73, 0x68, 0x00, 0x48,
-  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x70,  0x75, 0x73, 0x68, 0x00,
-  0x63, 0x6C, 0x6F, 0x73,  0x65, 0x00, 0x48, 0x54,  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,
-  0x74, 0x5F, 0x63, 0x6C,  0x6F, 0x73, 0x65, 0x00,  0x54, 0x65, 0x73, 0x74,  0x00, 0x61, 0x64, 0x76,
-  0x61, 0x6E, 0x63, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x61, 0x64,  0x76, 0x61, 0x6E, 0x63,
-  0x65, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x54, 0x65, 0x73,
-  0x74, 0x5F, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x6D, 0x6F, 0x75,
-  0x73, 0x65, 0x5F, 0x70,  0x72, 0x65, 0x73, 0x73,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,
-  0x75, 0x73, 0x65, 0x5F,  0x70, 0x72, 0x65, 0x73,  0x73, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
-  0x72, 0x65, 0x6C, 0x65,  0x61, 0x73, 0x65, 0x00,  0x54, 0x65, 0x73, 0x74,  0x5F, 0x6D, 0x6F, 0x75,
-  0x73, 0x65, 0x5F, 0x72,  0x65, 0x6C, 0x65, 0x61,  0x73, 0x65, 0x00, 0x72,  0x65, 0x6E, 0x64, 0x65,
-  0x72, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x72,  0x65, 0x6E, 0x64, 0x65,  0x72, 0x00, 0x72, 0x65,
-  0x73, 0x65, 0x74, 0x00,  0x54, 0x65, 0x73, 0x74,  0x5F, 0x72, 0x65, 0x73,  0x65, 0x74, 0x00, 0x74,
-  0x72, 0x61, 0x63, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x74, 0x72,  0x61, 0x63, 0x65, 0x00,
-  0x72, 0x61, 0x74, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x72, 0x61,
-  0x74, 0x65, 0x00, 0x70,  0x72, 0x69, 0x6E, 0x74,  0x00, 0x73, 0x00, 0x49,  0x4E, 0x46, 0x4F, 0x3A,
-  0x20, 0x00, 0x65, 0x72,  0x72, 0x6F, 0x72, 0x00,  0x45, 0x52, 0x52, 0x4F,  0x52, 0x3A, 0x20, 0x00,
-  0x96, 0x04, 0x00, 0x08,  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x00, 0x4E, 0x1D, 0x96,
-  0x02, 0x00, 0x08, 0x00,  0x1C, 0x96, 0x07, 0x00,  0x08, 0x02, 0x07, 0x00,  0x00, 0x00, 0x00, 0x43,
-  0x4F, 0x96, 0x02, 0x00,  0x08, 0x00, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,
-  0x08, 0x03, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,
-  0x00, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x05, 0x08, 0x01, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x06, 0x4E, 0x4F, 0x96,  0x04, 0x00, 0x08, 0x07,  0x08, 0x01, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x07,  0x4E, 0x1D, 0x96, 0x02,  0x00, 0x08, 0x07, 0x1C,  0x96, 0x07, 0x00, 0x08,
-  0x02, 0x07, 0x00, 0x00,  0x00, 0x00, 0x43, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x07, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x08, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x09, 0x4E, 0x4F, 0x96,  0x09, 0x00, 0x08, 0x0A,  0x07, 0x00, 0x00, 0x00,  0x00, 0x08, 0x0B, 0x40,
-  0x1D, 0x96, 0x02, 0x00,  0x08, 0x0A, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x02,  0x07, 0x00, 0x00, 0x00,
-  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0E,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x01, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x0D,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x0C, 0x07, 0x03,  0x00, 0x00, 0x00, 0x08,
-  0x0A, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x02, 0x00, 0x08,  0x0F, 0x52, 0x17, 0x96,
-  0x02, 0x00, 0x08, 0x0A,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x10,
-  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x11,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x0A, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x12, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x13, 0x4E,  0x4F, 0x96, 0x04, 0x00,  0x08, 0x14, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x14, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,  0x14, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x02, 0x07,
-  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x14, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x15, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x16, 0x4E,
-  0x4F, 0x96, 0x02, 0x00,  0x08, 0x14, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,
-  0x08, 0x17, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x18, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,
-  0x14, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x19, 0x08, 0x01, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x1A, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x14,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x1B,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1C,
-  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x14, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,
-  0x00, 0x08, 0x1D, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1E, 0x4E,  0x4F, 0x96, 0x02, 0x00,
-  0x08, 0x14, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x1F, 0x08, 0x01,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x20, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x14, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x21, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
-  0x22, 0x4E, 0x4F, 0x96,  0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x24, 0x4E,
-  0x96, 0x09, 0x00, 0x08,  0x23, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x14,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x02, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x0F,  0x52, 0x17, 0x96, 0x02,  0x00, 0x08, 0x25, 0x8E,
-  0x0B, 0x00, 0x00, 0x01,  0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,  0x00, 0x96, 0x02, 0x00,
-  0x08, 0x26, 0x1C, 0x12,  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,  0x08, 0x27, 0x08, 0x26,
-  0x1C, 0x47, 0x96, 0x07,  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x25, 0x52, 0x17,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x28, 0x8E, 0x0B,  0x00, 0x00, 0x01, 0x00,
-  0x00, 0x00, 0x00, 0x00,  0x73, 0x00, 0x27, 0x00,  0x96, 0x02, 0x00, 0x08,  0x26, 0x1C, 0x12, 0x9D,
-  0x02, 0x00, 0x1B, 0x00,  0x96, 0x04, 0x00, 0x08,  0x29, 0x08, 0x26, 0x1C,  0x47, 0x96, 0x07, 0x00,
-  0x07, 0x01, 0x00, 0x00,  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x25, 0x52, 0x17, 0x1D,
-  0x00
+  0x00, 0x73, 0x65, 0x72,  0x76, 0x65, 0x72, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,
+  0x65, 0x73, 0x74, 0x5F,  0x67, 0x65, 0x74, 0x5F,  0x73, 0x65, 0x72, 0x76,  0x65, 0x72, 0x00, 0x4E,
+  0x55, 0x4C, 0x4C, 0x00,  0x61, 0x64, 0x64, 0x50,  0x72, 0x6F, 0x70, 0x65,  0x72, 0x74, 0x79, 0x00,
+  0x75, 0x72, 0x6C, 0x00,  0x48, 0x54, 0x54, 0x50,  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,
+  0x67, 0x65, 0x74, 0x5F,  0x75, 0x72, 0x6C, 0x00,  0x70, 0x61, 0x74, 0x68,  0x00, 0x48, 0x54, 0x54,
+  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x70, 0x61, 0x74,
+  0x68, 0x00, 0x74, 0x6F,  0x53, 0x74, 0x72, 0x69,  0x6E, 0x67, 0x00, 0x48,  0x54, 0x54, 0x50, 0x52,
+  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x74,  0x6F, 0x53, 0x74, 0x72,  0x69, 0x6E, 0x67, 0x00,
+  0x70, 0x75, 0x73, 0x68,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
+  0x5F, 0x70, 0x75, 0x73,  0x68, 0x00, 0x63, 0x6C,  0x6F, 0x73, 0x65, 0x00,  0x48, 0x54, 0x54, 0x50,
+  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x5F,  0x63, 0x6C, 0x6F, 0x73,  0x65, 0x00, 0x54, 0x65,
+  0x73, 0x74, 0x00, 0x61,  0x64, 0x76, 0x61, 0x6E,  0x63, 0x65, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,
+  0x61, 0x64, 0x76, 0x61,  0x6E, 0x63, 0x65, 0x00,  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x6D, 0x6F,
+  0x76, 0x65, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x6D, 0x6F,
+  0x76, 0x65, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x70, 0x72, 0x65,  0x73, 0x73, 0x00, 0x54,
+  0x65, 0x73, 0x74, 0x5F,  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x70, 0x72,  0x65, 0x73, 0x73, 0x00,
+  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x72, 0x65,  0x6C, 0x65, 0x61, 0x73,  0x65, 0x00, 0x54, 0x65,
+  0x73, 0x74, 0x5F, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x72, 0x65, 0x6C,  0x65, 0x61, 0x73, 0x65,
+  0x00, 0x72, 0x65, 0x6E,  0x64, 0x65, 0x72, 0x00,  0x54, 0x65, 0x73, 0x74,  0x5F, 0x72, 0x65, 0x6E,
+  0x64, 0x65, 0x72, 0x00,  0x72, 0x65, 0x73, 0x65,  0x74, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x72,
+  0x65, 0x73, 0x65, 0x74,  0x00, 0x74, 0x72, 0x61,  0x63, 0x65, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,
+  0x74, 0x72, 0x61, 0x63,  0x65, 0x00, 0x72, 0x61,  0x74, 0x65, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,
+  0x67, 0x65, 0x74, 0x5F,  0x72, 0x61, 0x74, 0x65,  0x00, 0x70, 0x72, 0x69,  0x6E, 0x74, 0x00, 0x73,
+  0x00, 0x49, 0x4E, 0x46,  0x4F, 0x3A, 0x20, 0x00,  0x65, 0x72, 0x72, 0x6F,  0x72, 0x00, 0x45, 0x52,
+  0x52, 0x4F, 0x52, 0x3A,  0x20, 0x00, 0x96, 0x04,  0x00, 0x08, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x00, 0x4E,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x00, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x02,
+  0x07, 0x00, 0x00, 0x00,  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x00,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x03,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,
+  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x00, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,
+  0x00, 0x08, 0x05, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x06, 0x4E,  0x4F, 0x96, 0x04, 0x00,
+  0x08, 0x07, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x07, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,
+  0x07, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x02, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,
+  0x00, 0x08, 0x07, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x08, 0x08,
+  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x09, 0x4E,  0x4F, 0x96, 0x09, 0x00,  0x08, 0x0A, 0x07, 0x00,
+  0x00, 0x00, 0x00, 0x08,  0x0B, 0x40, 0x1D, 0x96,  0x02, 0x00, 0x08, 0x0A,  0x1C, 0x96, 0x07, 0x00,
+  0x08, 0x02, 0x07, 0x00,  0x00, 0x00, 0x00, 0x43,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x0E, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x0D, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x0C,
+  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0A, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x02,
+  0x00, 0x08, 0x0F, 0x52,  0x17, 0x96, 0x02, 0x00,  0x08, 0x0E, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x11, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x10,  0x07, 0x03, 0x00, 0x00,
+  0x00, 0x08, 0x0A, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x0F, 0x52,
+  0x17, 0x96, 0x02, 0x00,  0x08, 0x0E, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x13, 0x4E, 0x96,  0x09, 0x00, 0x08, 0x12,  0x07, 0x03, 0x00, 0x00,  0x00, 0x08, 0x0A, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x02,  0x00, 0x08, 0x0F, 0x52,  0x17, 0x96, 0x02, 0x00,
+  0x08, 0x0A, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x14, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x15, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x0A, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x16, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x17, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0A,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,
+  0x04, 0x00, 0x08, 0x18,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x19,  0x4E, 0x4F, 0x96, 0x04,
+  0x00, 0x08, 0x1A, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1A, 0x4E,  0x1D, 0x96, 0x02, 0x00,
+  0x08, 0x1A, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x02,  0x07, 0x00, 0x00, 0x00,  0x00, 0x43, 0x4F, 0x96,
+  0x02, 0x00, 0x08, 0x1A,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x1B,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1C,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x1A, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x1D, 0x08,  0x01, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x1E, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x1A, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,
+  0x4E, 0x96, 0x04, 0x00,  0x08, 0x1F, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x20, 0x4E, 0x4F,
+  0x96, 0x02, 0x00, 0x08,  0x1A, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,
+  0x21, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x22, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x1A,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x23,  0x08, 0x01, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x24,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x1A, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x25, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x26, 0x4E,
+  0x4F, 0x96, 0x02, 0x00,  0x08, 0x1A, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,
+  0x08, 0x27, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x28, 0x4E, 0x4F,  0x96, 0x03, 0x00, 0x02,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x2A,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x29, 0x07, 0x03,
+  0x00, 0x00, 0x00, 0x08,  0x1A, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x02, 0x00, 0x08,
+  0x0F, 0x52, 0x17, 0x96,  0x02, 0x00, 0x08, 0x2B,  0x8E, 0x0B, 0x00, 0x00,  0x01, 0x00, 0x00, 0x00,
+  0x00, 0x00, 0x73, 0x00,  0x27, 0x00, 0x96, 0x02,  0x00, 0x08, 0x2C, 0x1C,  0x12, 0x9D, 0x02, 0x00,
+  0x1B, 0x00, 0x96, 0x04,  0x00, 0x08, 0x2D, 0x08,  0x2C, 0x1C, 0x47, 0x96,  0x07, 0x00, 0x07, 0x01,
+  0x00, 0x00, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x2B, 0x52,  0x17, 0x1D, 0x96, 0x02,
+  0x00, 0x08, 0x2E, 0x8E,  0x0B, 0x00, 0x00, 0x01,  0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,
+  0x00, 0x96, 0x02, 0x00,  0x08, 0x2C, 0x1C, 0x12,  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,
+  0x08, 0x2F, 0x08, 0x2C,  0x1C, 0x47, 0x96, 0x07,  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x2B, 0x52, 0x17,  0x1D, 0x00
 };
 
commit c797a920f74dc2991193691a137640d3a6c89825
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Thu Jan 31 19:56:15 2008 +0200

    Start implementing HTTPServer class for the test system

diff --git a/test/Makefile.am b/test/Makefile.am
index d7f5830..dec3a3f 100644
--- a/test/Makefile.am
+++ b/test/Makefile.am
@@ -6,6 +6,7 @@ swfdec_test_sources = \
 	swfdec_test.c \
 	swfdec_test_function.c \
 	swfdec_test_global.c \
+	swfdec_test_http_server.c \
 	swfdec_test_image.c \
 	swfdec_test_test.c
 
@@ -25,6 +26,7 @@ EXTRA_DIST = \
 noinst_HEADERS = \
 	swfdec_test_function.h \
 	swfdec_test_function_list.h \
+	swfdec_test_http_server.h \
 	swfdec_test_image.h \
 	swfdec_test_initialize.h \
 	swfdec_test_test.h
diff --git a/test/swfdec_test_function.c b/test/swfdec_test_function.c
index 4e6605d..81e77e6 100644
--- a/test/swfdec_test_function.c
+++ b/test/swfdec_test_function.c
@@ -25,6 +25,7 @@
 #include "swfdec_test_function_list.h"
 
 /* needed by the function list */
+#include "swfdec_test_http_server.h"
 #include "swfdec_test_image.h"
 #include "swfdec_test_test.h"
 
diff --git a/test/swfdec_test_http_server.c b/test/swfdec_test_http_server.c
new file mode 100644
index 0000000..839e66c
--- /dev/null
+++ b/test/swfdec_test_http_server.c
@@ -0,0 +1,170 @@
+/* Swfdec
+ * Copyright (C) 2007 Benjamin Otte <otte at gnome.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ * 
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, 
+ * Boston, MA  02110-1301  USA
+ */
+
+#ifdef HAVE_CONFIG_H
+#include "config.h"
+#endif
+
+#include <unistd.h>
+#include <libsoup/soup.h>
+
+#include "swfdec_test_http_server.h"
+#include "swfdec_test_function.h"
+
+#define SWFDEC_TEST_HTTP_SERVER_IS_VALID(server) ((server)->server)
+
+static void
+swfdec_test_http_server_callback (SoupServer *soup_server, SoupMessage *msg,
+    const char *path, GHashTable *query, SoupClientContext *client,
+    gpointer userdata)
+{
+  SwfdecTestHTTPServer *server = userdata;
+
+  g_return_if_fail (server->server == soup_server);
+}
+
+static gboolean
+swfdec_test_http_server_start (SwfdecTestHTTPServer *server)
+{
+  SoupAddress *address;
+
+  g_return_val_if_fail (SWFDEC_IS_TEST_HTTP_SERVER (server), FALSE);
+  g_return_val_if_fail (server->server == NULL, FALSE);
+
+  address = soup_address_new ("localhost", server->port);
+  if (soup_address_resolve_sync (address, NULL) != SOUP_STATUS_OK)
+    return FALSE;
+
+  server->context = g_main_context_new ();
+
+  server->server = soup_server_new (SOUP_SERVER_PORT, server->port,
+      SOUP_SERVER_INTERFACE, address, SOUP_SERVER_ASYNC_CONTEXT,
+      server->context, NULL);
+  if (!server) {
+    g_main_context_unref (server->context);
+    server->context = NULL;
+    return FALSE;
+  }
+
+  soup_server_add_handler (server->server, NULL,
+      swfdec_test_http_server_callback, server, NULL);
+
+  soup_server_run_async (server->server);
+
+  return TRUE;
+}
+
+SwfdecAsObject *
+swfdec_test_http_server_new (SwfdecAsContext *context, guint port)
+{
+  SwfdecAsValue val;
+  SwfdecAsObject *ret;
+
+  if (!swfdec_as_context_use_mem (context, sizeof (SwfdecTestHTTPServer)))
+    return NULL;
+
+  ret = g_object_new (SWFDEC_TYPE_TEST_HTTP_SERVER, NULL);
+  swfdec_as_object_add (ret, context, sizeof (SwfdecTestHTTPServer));
+  swfdec_as_object_get_variable (context->global,
+      swfdec_as_context_get_string (context, "HTTPServer"), &val);
+
+  if (SWFDEC_AS_VALUE_IS_OBJECT (&val))
+    swfdec_as_object_set_constructor (ret, SWFDEC_AS_VALUE_GET_OBJECT (&val));
+
+  SWFDEC_TEST_HTTP_SERVER (ret)->port = port;
+
+  swfdec_test_http_server_start (SWFDEC_TEST_HTTP_SERVER (ret));
+
+  return ret;
+}
+
+/*** SWFDEC_TEST_HTTP_SERVER ***/
+
+G_DEFINE_TYPE (SwfdecTestHTTPServer, swfdec_test_http_server, SWFDEC_TYPE_AS_OBJECT)
+
+static void
+swfdec_test_http_server_dispose (GObject *object)
+{
+  SwfdecTestHTTPServer *server = SWFDEC_TEST_HTTP_SERVER (object);
+
+  if (server->server) {
+    soup_server_quit (server->server);
+    server->server = NULL;
+  }
+
+  if (server->context) {
+    g_main_context_unref (server->context);
+    server->context = NULL;
+  }
+
+  G_OBJECT_CLASS (swfdec_test_http_server_parent_class)->dispose (object);
+}
+
+static void
+swfdec_test_http_server_class_init (SwfdecTestHTTPServerClass *klass)
+{
+  GObjectClass *object_class = G_OBJECT_CLASS (klass);
+
+  object_class->dispose = swfdec_test_http_server_dispose;
+}
+
+static void
+swfdec_test_http_server_init (SwfdecTestHTTPServer *this)
+{
+}
+
+/*** AS CODE ***/
+
+SWFDEC_TEST_FUNCTION ("HTTPServer_getRequest", swfdec_test_http_server_get_request, 0)
+void
+swfdec_test_http_server_get_request (SwfdecAsContext *cx,
+    SwfdecAsObject *object, guint argc, SwfdecAsValue *argv,
+    SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPServer *server;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_SERVER, &server, "");
+
+  SWFDEC_AS_VALUE_SET_NULL (retval);
+
+  if (!SWFDEC_TEST_HTTP_SERVER_IS_VALID (server))
+    return;
+
+  g_main_context_iteration (server->context, FALSE);
+
+  SWFDEC_AS_VALUE_SET_BOOLEAN (retval, TRUE);
+}
+
+SWFDEC_TEST_FUNCTION ("HTTPServer", swfdec_test_http_server_create, swfdec_test_http_server_get_type)
+void
+swfdec_test_http_server_create (SwfdecAsContext *cx, SwfdecAsObject *object, guint argc,
+    SwfdecAsValue *argv, SwfdecAsValue *retval)
+{
+  SwfdecTestHTTPServer *server;
+  int port;
+
+  SWFDEC_AS_CHECK (SWFDEC_TYPE_TEST_HTTP_SERVER, &server, "|i", &port);
+
+  if (port <= 0)
+    port = 12345;
+
+  server->port = port;
+
+  swfdec_test_http_server_start (server);
+}
diff --git a/test/swfdec_test_http_server.h b/test/swfdec_test_http_server.h
new file mode 100644
index 0000000..7ec52a4
--- /dev/null
+++ b/test/swfdec_test_http_server.h
@@ -0,0 +1,61 @@
+/* Swfdec
+ * Copyright (C) 2007 Benjamin Otte <otte at gnome.org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ * 
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ * 
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, 
+ * Boston, MA  02110-1301  USA
+ */
+
+#ifndef _SWFDEC_TEST_HTTP_SERVER_H_
+#define _SWFDEC_TEST_HTTP_SERVER_H_
+
+#include <swfdec/swfdec.h>
+#include <libsoup/soup.h>
+
+G_BEGIN_DECLS
+
+
+typedef struct _SwfdecTestHTTPServer SwfdecTestHTTPServer;
+typedef struct _SwfdecTestHTTPServerClass SwfdecTestHTTPServerClass;
+
+#define SWFDEC_TYPE_TEST_HTTP_SERVER                    (swfdec_test_http_server_get_type())
+#define SWFDEC_IS_TEST_HTTP_SERVER(obj)                 (G_TYPE_CHECK_INSTANCE_TYPE ((obj), SWFDEC_TYPE_TEST_HTTP_SERVER))
+#define SWFDEC_IS_TEST_HTTP_SERVER_CLASS(klass)         (G_TYPE_CHECK_CLASS_TYPE ((klass), SWFDEC_TYPE_TEST_HTTP_SERVER))
+#define SWFDEC_TEST_HTTP_SERVER(obj)                    (G_TYPE_CHECK_INSTANCE_CAST ((obj), SWFDEC_TYPE_TEST_HTTP_SERVER, SwfdecTestHTTPServer))
+#define SWFDEC_TEST_HTTP_SERVER_CLASS(klass)            (G_TYPE_CHECK_CLASS_CAST ((klass), SWFDEC_TYPE_TEST_HTTP_SERVER, SwfdecTestHTTPServerClass))
+#define SWFDEC_TEST_HTTP_SERVER_GET_CLASS(obj)          (G_TYPE_INSTANCE_GET_CLASS ((obj), SWFDEC_TYPE_TEST_HTTP_SERVER, SwfdecTestHTTPServerClass))
+
+struct _SwfdecTestHTTPServer
+{
+  SwfdecAsObject	as_object;
+
+  GMainContext *	context;
+  SoupServer *		server;
+  guint			port;
+
+  SoupMessage *		message;
+};
+
+struct _SwfdecTestHTTPServerClass
+{
+  SwfdecAsObjectClass	as_object_class;
+};
+
+GType		swfdec_test_http_server_get_type	(void);
+
+SwfdecAsObject *swfdec_test_http_server_new		(SwfdecAsContext *	context,
+							 guint			port);
+
+G_END_DECLS
+#endif
diff --git a/test/swfdec_test_initialize.as b/test/swfdec_test_initialize.as
index debff41..97bebc8 100644
--- a/test/swfdec_test_initialize.as
+++ b/test/swfdec_test_initialize.as
@@ -22,6 +22,16 @@ Image.prototype = {};
 Image.prototype.compare = Native.Image_compare;
 Image.prototype.save = Native.Image_save;
 
+HTTPServer = Native.HTTPServer;
+HTTPServer.prototype = {};
+HTTPServer.prototype.getRequest = Native.HTTPServer_getRequest;
+
+HTTPRequest = new Object ();
+HTTPRequest.prototype = {};
+HTTPRequest.prototype.addProperty ("url", Native.HTTPRequest_get_url, NULL);
+HTTPRequest.prototype.push = Native.HTTPRequest_push;
+HTTPRequest.prototype.close = Native.HTTPRequest_close;
+
 Test = Native.Test;
 Test.prototype = {};
 Test.prototype.advance = Native.Test_advance;
diff --git a/test/swfdec_test_initialize.h b/test/swfdec_test_initialize.h
index 20be2e5..437b948 100644
--- a/test/swfdec_test_initialize.h
+++ b/test/swfdec_test_initialize.h
@@ -2,53 +2,74 @@
 
 /* compiled from swfdec_test_initialize.as */
 static const unsigned char swfdec_test_initialize[] = {
-  0x88, 0x23, 0x01, 0x1E,  0x00, 0x49, 0x6D, 0x61,  0x67, 0x65, 0x00, 0x4E,  0x61, 0x74, 0x69, 0x76,
+  0x88, 0xAD, 0x01, 0x2A,  0x00, 0x49, 0x6D, 0x61,  0x67, 0x65, 0x00, 0x4E,  0x61, 0x74, 0x69, 0x76,
   0x65, 0x00, 0x70, 0x72,  0x6F, 0x74, 0x6F, 0x74,  0x79, 0x70, 0x65, 0x00,  0x63, 0x6F, 0x6D, 0x70,
   0x61, 0x72, 0x65, 0x00,  0x49, 0x6D, 0x61, 0x67,  0x65, 0x5F, 0x63, 0x6F,  0x6D, 0x70, 0x61, 0x72,
   0x65, 0x00, 0x73, 0x61,  0x76, 0x65, 0x00, 0x49,  0x6D, 0x61, 0x67, 0x65,  0x5F, 0x73, 0x61, 0x76,
-  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x00, 0x61,  0x64, 0x76, 0x61, 0x6E,  0x63, 0x65, 0x00, 0x54,
-  0x65, 0x73, 0x74, 0x5F,  0x61, 0x64, 0x76, 0x61,  0x6E, 0x63, 0x65, 0x00,  0x6D, 0x6F, 0x75, 0x73,
-  0x65, 0x5F, 0x6D, 0x6F,  0x76, 0x65, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,  0x6D, 0x6F, 0x75, 0x73,
-  0x65, 0x5F, 0x6D, 0x6F,  0x76, 0x65, 0x00, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x70, 0x72, 0x65,
-  0x73, 0x73, 0x00, 0x54,  0x65, 0x73, 0x74, 0x5F,  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x70, 0x72,
-  0x65, 0x73, 0x73, 0x00,  0x6D, 0x6F, 0x75, 0x73,  0x65, 0x5F, 0x72, 0x65,  0x6C, 0x65, 0x61, 0x73,
-  0x65, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x6D,  0x6F, 0x75, 0x73, 0x65,  0x5F, 0x72, 0x65, 0x6C,
-  0x65, 0x61, 0x73, 0x65,  0x00, 0x72, 0x65, 0x6E,  0x64, 0x65, 0x72, 0x00,  0x54, 0x65, 0x73, 0x74,
-  0x5F, 0x72, 0x65, 0x6E,  0x64, 0x65, 0x72, 0x00,  0x72, 0x65, 0x73, 0x65,  0x74, 0x00, 0x54, 0x65,
-  0x73, 0x74, 0x5F, 0x72,  0x65, 0x73, 0x65, 0x74,  0x00, 0x74, 0x72, 0x61,  0x63, 0x65, 0x00, 0x54,
-  0x65, 0x73, 0x74, 0x5F,  0x74, 0x72, 0x61, 0x63,  0x65, 0x00, 0x72, 0x61,  0x74, 0x65, 0x00, 0x54,
-  0x65, 0x73, 0x74, 0x5F,  0x67, 0x65, 0x74, 0x5F,  0x72, 0x61, 0x74, 0x65,  0x00, 0x61, 0x64, 0x64,
-  0x50, 0x72, 0x6F, 0x70,  0x65, 0x72, 0x74, 0x79,  0x00, 0x70, 0x72, 0x69,  0x6E, 0x74, 0x00, 0x73,
-  0x00, 0x49, 0x4E, 0x46,  0x4F, 0x3A, 0x20, 0x00,  0x65, 0x72, 0x72, 0x6F,  0x72, 0x00, 0x45, 0x52,
-  0x52, 0x4F, 0x52, 0x3A,  0x20, 0x00, 0x96, 0x04,  0x00, 0x08, 0x00, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x00, 0x4E,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x00, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x02,
-  0x07, 0x00, 0x00, 0x00,  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x00,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x03,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x04,
-  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x00, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,
-  0x00, 0x08, 0x05, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x06, 0x4E,  0x4F, 0x96, 0x04, 0x00,
-  0x08, 0x07, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x07, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,
-  0x07, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x02, 0x07,  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,
-  0x00, 0x08, 0x07, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x08, 0x08,
-  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x09, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x07, 0x1C, 0x96,
-  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x0A, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
-  0x08, 0x0B, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x07, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,
-  0x96, 0x04, 0x00, 0x08,  0x0C, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x0D, 0x4E, 0x4F, 0x96,
-  0x02, 0x00, 0x08, 0x07,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x0E,
-  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x0F,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x07, 0x1C,
-  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x10, 0x08,  0x01, 0x1C, 0x96, 0x02,
-  0x00, 0x08, 0x11, 0x4E,  0x4F, 0x96, 0x02, 0x00,  0x08, 0x07, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,
-  0x4E, 0x96, 0x04, 0x00,  0x08, 0x12, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x13, 0x4E, 0x4F,
-  0x96, 0x02, 0x00, 0x08,  0x07, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,
-  0x14, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x15, 0x4E, 0x4F, 0x96,  0x03, 0x00, 0x02, 0x08,
-  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x17, 0x4E,  0x96, 0x09, 0x00, 0x08,  0x16, 0x07, 0x03, 0x00,
-  0x00, 0x00, 0x08, 0x07,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x18,
-  0x52, 0x17, 0x96, 0x02,  0x00, 0x08, 0x19, 0x9B,  0x07, 0x00, 0x00, 0x01,  0x00, 0x73, 0x00, 0x27,
-  0x00, 0x96, 0x02, 0x00,  0x08, 0x1A, 0x1C, 0x12,  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,
-  0x08, 0x1B, 0x08, 0x1A,  0x1C, 0x47, 0x96, 0x07,  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,
-  0x1C, 0x96, 0x02, 0x00,  0x08, 0x19, 0x52, 0x17,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x1C, 0x9B, 0x07,
-  0x00, 0x00, 0x01, 0x00,  0x73, 0x00, 0x27, 0x00,  0x96, 0x02, 0x00, 0x08,  0x1A, 0x1C, 0x12, 0x9D,
-  0x02, 0x00, 0x1B, 0x00,  0x96, 0x04, 0x00, 0x08,  0x1D, 0x08, 0x1A, 0x1C,  0x47, 0x96, 0x07, 0x00,
-  0x07, 0x01, 0x00, 0x00,  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x19, 0x52, 0x17, 0x1D,
+  0x65, 0x00, 0x48, 0x54,  0x54, 0x50, 0x53, 0x65,  0x72, 0x76, 0x65, 0x72,  0x00, 0x67, 0x65, 0x74,
+  0x52, 0x65, 0x71, 0x75,  0x65, 0x73, 0x74, 0x00,  0x48, 0x54, 0x54, 0x50,  0x53, 0x65, 0x72, 0x76,
+  0x65, 0x72, 0x5F, 0x67,  0x65, 0x74, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x00, 0x48, 0x54,
+  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,  0x74, 0x00, 0x4F, 0x62,  0x6A, 0x65, 0x63, 0x74,
+  0x00, 0x75, 0x72, 0x6C,  0x00, 0x48, 0x54, 0x54,  0x50, 0x52, 0x65, 0x71,  0x75, 0x65, 0x73, 0x74,
+  0x5F, 0x67, 0x65, 0x74,  0x5F, 0x75, 0x72, 0x6C,  0x00, 0x4E, 0x55, 0x4C,  0x4C, 0x00, 0x61, 0x64,
+  0x64, 0x50, 0x72, 0x6F,  0x70, 0x65, 0x72, 0x74,  0x79, 0x00, 0x70, 0x75,  0x73, 0x68, 0x00, 0x48,
+  0x54, 0x54, 0x50, 0x52,  0x65, 0x71, 0x75, 0x65,  0x73, 0x74, 0x5F, 0x70,  0x75, 0x73, 0x68, 0x00,
+  0x63, 0x6C, 0x6F, 0x73,  0x65, 0x00, 0x48, 0x54,  0x54, 0x50, 0x52, 0x65,  0x71, 0x75, 0x65, 0x73,
+  0x74, 0x5F, 0x63, 0x6C,  0x6F, 0x73, 0x65, 0x00,  0x54, 0x65, 0x73, 0x74,  0x00, 0x61, 0x64, 0x76,
+  0x61, 0x6E, 0x63, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x61, 0x64,  0x76, 0x61, 0x6E, 0x63,
+  0x65, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x54, 0x65, 0x73,
+  0x74, 0x5F, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,  0x6D, 0x6F, 0x76, 0x65,  0x00, 0x6D, 0x6F, 0x75,
+  0x73, 0x65, 0x5F, 0x70,  0x72, 0x65, 0x73, 0x73,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x6D, 0x6F,
+  0x75, 0x73, 0x65, 0x5F,  0x70, 0x72, 0x65, 0x73,  0x73, 0x00, 0x6D, 0x6F,  0x75, 0x73, 0x65, 0x5F,
+  0x72, 0x65, 0x6C, 0x65,  0x61, 0x73, 0x65, 0x00,  0x54, 0x65, 0x73, 0x74,  0x5F, 0x6D, 0x6F, 0x75,
+  0x73, 0x65, 0x5F, 0x72,  0x65, 0x6C, 0x65, 0x61,  0x73, 0x65, 0x00, 0x72,  0x65, 0x6E, 0x64, 0x65,
+  0x72, 0x00, 0x54, 0x65,  0x73, 0x74, 0x5F, 0x72,  0x65, 0x6E, 0x64, 0x65,  0x72, 0x00, 0x72, 0x65,
+  0x73, 0x65, 0x74, 0x00,  0x54, 0x65, 0x73, 0x74,  0x5F, 0x72, 0x65, 0x73,  0x65, 0x74, 0x00, 0x74,
+  0x72, 0x61, 0x63, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x74, 0x72,  0x61, 0x63, 0x65, 0x00,
+  0x72, 0x61, 0x74, 0x65,  0x00, 0x54, 0x65, 0x73,  0x74, 0x5F, 0x67, 0x65,  0x74, 0x5F, 0x72, 0x61,
+  0x74, 0x65, 0x00, 0x70,  0x72, 0x69, 0x6E, 0x74,  0x00, 0x73, 0x00, 0x49,  0x4E, 0x46, 0x4F, 0x3A,
+  0x20, 0x00, 0x65, 0x72,  0x72, 0x6F, 0x72, 0x00,  0x45, 0x52, 0x52, 0x4F,  0x52, 0x3A, 0x20, 0x00,
+  0x96, 0x04, 0x00, 0x08,  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x00, 0x4E, 0x1D, 0x96,
+  0x02, 0x00, 0x08, 0x00,  0x1C, 0x96, 0x07, 0x00,  0x08, 0x02, 0x07, 0x00,  0x00, 0x00, 0x00, 0x43,
+  0x4F, 0x96, 0x02, 0x00,  0x08, 0x00, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,
+  0x08, 0x03, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x04, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,
+  0x00, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x05, 0x08, 0x01, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x06, 0x4E, 0x4F, 0x96,  0x04, 0x00, 0x08, 0x07,  0x08, 0x01, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x07,  0x4E, 0x1D, 0x96, 0x02,  0x00, 0x08, 0x07, 0x1C,  0x96, 0x07, 0x00, 0x08,
+  0x02, 0x07, 0x00, 0x00,  0x00, 0x00, 0x43, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x07, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x08, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x09, 0x4E, 0x4F, 0x96,  0x09, 0x00, 0x08, 0x0A,  0x07, 0x00, 0x00, 0x00,  0x00, 0x08, 0x0B, 0x40,
+  0x1D, 0x96, 0x02, 0x00,  0x08, 0x0A, 0x1C, 0x96,  0x07, 0x00, 0x08, 0x02,  0x07, 0x00, 0x00, 0x00,
+  0x00, 0x43, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x0E,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x01, 0x1C, 0x96,
+  0x02, 0x00, 0x08, 0x0D,  0x4E, 0x96, 0x09, 0x00,  0x08, 0x0C, 0x07, 0x03,  0x00, 0x00, 0x00, 0x08,
+  0x0A, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x02, 0x00, 0x08,  0x0F, 0x52, 0x17, 0x96,
+  0x02, 0x00, 0x08, 0x0A,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x10,
+  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x11,  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x0A, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x12, 0x08,  0x01, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x13, 0x4E,  0x4F, 0x96, 0x04, 0x00,  0x08, 0x14, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x14, 0x4E, 0x1D,  0x96, 0x02, 0x00, 0x08,  0x14, 0x1C, 0x96, 0x07,  0x00, 0x08, 0x02, 0x07,
+  0x00, 0x00, 0x00, 0x00,  0x43, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x14, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x02, 0x4E, 0x96, 0x04,  0x00, 0x08, 0x15, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x16, 0x4E,
+  0x4F, 0x96, 0x02, 0x00,  0x08, 0x14, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,
+  0x08, 0x17, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,  0x08, 0x18, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,
+  0x14, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x19, 0x08, 0x01, 0x1C,
+  0x96, 0x02, 0x00, 0x08,  0x1A, 0x4E, 0x4F, 0x96,  0x02, 0x00, 0x08, 0x14,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x02, 0x4E, 0x96,  0x04, 0x00, 0x08, 0x1B,  0x08, 0x01, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x1C,
+  0x4E, 0x4F, 0x96, 0x02,  0x00, 0x08, 0x14, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x02, 0x4E, 0x96, 0x04,
+  0x00, 0x08, 0x1D, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x1E, 0x4E,  0x4F, 0x96, 0x02, 0x00,
+  0x08, 0x14, 0x1C, 0x96,  0x02, 0x00, 0x08, 0x02,  0x4E, 0x96, 0x04, 0x00,  0x08, 0x1F, 0x08, 0x01,
+  0x1C, 0x96, 0x02, 0x00,  0x08, 0x20, 0x4E, 0x4F,  0x96, 0x02, 0x00, 0x08,  0x14, 0x1C, 0x96, 0x02,
+  0x00, 0x08, 0x02, 0x4E,  0x96, 0x04, 0x00, 0x08,  0x21, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,
+  0x22, 0x4E, 0x4F, 0x96,  0x03, 0x00, 0x02, 0x08,  0x01, 0x1C, 0x96, 0x02,  0x00, 0x08, 0x24, 0x4E,
+  0x96, 0x09, 0x00, 0x08,  0x23, 0x07, 0x03, 0x00,  0x00, 0x00, 0x08, 0x14,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x02, 0x4E, 0x96,  0x02, 0x00, 0x08, 0x0F,  0x52, 0x17, 0x96, 0x02,  0x00, 0x08, 0x25, 0x8E,
+  0x0B, 0x00, 0x00, 0x01,  0x00, 0x00, 0x00, 0x00,  0x00, 0x73, 0x00, 0x27,  0x00, 0x96, 0x02, 0x00,
+  0x08, 0x26, 0x1C, 0x12,  0x9D, 0x02, 0x00, 0x1B,  0x00, 0x96, 0x04, 0x00,  0x08, 0x27, 0x08, 0x26,
+  0x1C, 0x47, 0x96, 0x07,  0x00, 0x07, 0x01, 0x00,  0x00, 0x00, 0x08, 0x01,  0x1C, 0x96, 0x02, 0x00,
+  0x08, 0x25, 0x52, 0x17,  0x1D, 0x96, 0x02, 0x00,  0x08, 0x28, 0x8E, 0x0B,  0x00, 0x00, 0x01, 0x00,
+  0x00, 0x00, 0x00, 0x00,  0x73, 0x00, 0x27, 0x00,  0x96, 0x02, 0x00, 0x08,  0x26, 0x1C, 0x12, 0x9D,
+  0x02, 0x00, 0x1B, 0x00,  0x96, 0x04, 0x00, 0x08,  0x29, 0x08, 0x26, 0x1C,  0x47, 0x96, 0x07, 0x00,
+  0x07, 0x01, 0x00, 0x00,  0x00, 0x08, 0x01, 0x1C,  0x96, 0x02, 0x00, 0x08,  0x25, 0x52, 0x17, 0x1D,
   0x00
 };
 
commit 85389a38e087b47e14726bcdba0c1cc32ffde022
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date:   Thu Jan 31 18:06:22 2008 +0200

    Fix crash in swfdec/compiler.c, use SWFAction_compile. Compile version is 8 now

diff --git a/swfdec/compiler.c b/swfdec/compiler.c
index 5593cec..b8af8ba 100644
--- a/swfdec/compiler.c
+++ b/swfdec/compiler.c
@@ -12,9 +12,9 @@
  * autorun, as we don't want to depend on external bugs, only on internal ones.
  */
 static gboolean
-write_data (guint8 *data, gsize len)
+write_data (guint8 *data, int len)
 {
-  gsize i;
+  int i;
 
   for (i = 0; i < len; i++) {
     switch (i % 16) {
@@ -60,7 +60,8 @@ main (int argc, char **argv)
   char *contents;
   GError *error = NULL;
   guint i;
-  gsize len;
+  int len;
+  gsize ignored;
   byte *data;
 
   if (argc < 2) {
@@ -74,13 +75,17 @@ main (int argc, char **argv)
   g_print ("/* This file is autogenerated, do not edit! */\n\n");
   for (i = 1; i < argc; i++) {
     if (!g_file_get_contents (argv[1], &contents, NULL, &error)) {
-      g_printerr ("%s\n", error->message);
+      g_printerr ("Error: %s\n", error->message);
       g_error_free (error);
       error = NULL;
       return 1;
     }
     action = newSWFAction (contents);
-    data = SWFAction_getByteCode (action, &len);
+    if (SWFAction_compile (action, 8, &len) != 0) {
+      g_printerr ("Error: Couldn't compile\n");
+      return -1;
+    }
+    data = SWFAction_getByteCode (action, &ignored);
     contents = get_name (argv[i]);
     g_print ("/* compiled from %s */\n", argv[i]);
     g_print ("static const unsigned char %s[] = {\n", contents);


More information about the Swfdec-commits mailing list