Displaying 19 results from an estimated 19 matches for "swfdecasfunctio".
Did you mean:
swfdecasfunction
2007 May 24
0
Branch 'as' - 11 commits - libswfdec/swfdec_as_array.c libswfdec/swfdec_as_context.c libswfdec/swfdec_as_function.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_native_function.c libswfdec/swfdec_as_number.c libswfdec/swfdec_as_object.c
...hu May 24 17:13:15 2007 +0200
Flash <= 5 has no Function object
diff --git a/libswfdec/swfdec_as_function.c b/libswfdec/swfdec_as_function.c
index 2f0f0e7..1f174fb 100644
--- a/libswfdec/swfdec_as_function.c
+++ b/libswfdec/swfdec_as_function.c
@@ -101,12 +101,6 @@ swfdec_as_function_call (SwfdecAsFunctio
/*** AS CODE ***/
-static void
-swfdec_as_function_construct (SwfdecAsObject *object, guint argc, SwfdecAsValue *argv, SwfdecAsValue *ret)
-{
-
-}
-
void
swfdec_as_function_init_context (SwfdecAsContext *context, guint version)
{
@@ -116,9 +110,13 @@ swfdec_as_function_init_context (SwfdecA...
2007 Aug 19
0
2 commits - libswfdec/swfdec_as_array.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h libswfdec/swfdec_as_super.c libswfdec/swfdec_as_with.c libswfdec/swfdec_movie.c libswfdec/swfdec_player.c libswfdec/swfdec_sprite_movie.c
..._set_variable_and_flags
+ (SwfdecAsObject * object,
const char * variable,
- const SwfdecAsValue * value);
+ const SwfdecAsValue * value,
+ guint default_flags);
void swfdec_as_object_add_variable (SwfdecAsObject * object,
const char * variable,
SwfdecAsFunction * get,
diff --git a/libswfdec/swfdec_as_super.c b/libswfdec/swfdec_as_super.c
index 653c30a..aa75a0b 100644
--- a/libswfdec/swfdec_as_super.c
+++ b/libswfdec/swfdec_as_super.c
@@ -88,7 +88,7 @@ swfdec_as_super_get (SwfdecAsObject *obj
}
static void
-swfdec_as_super_set (SwfdecAsObject *object,...
2007 May 22
0
Branch 'as' - 9 commits - libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_function.c libswfdec/swfdec_as_function.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_native_function.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_script_function.c
...er.c
@@ -29,11 +29,32 @@
#include "swfdec_as_function.h"
#include "swfdec_debug.h"
-G_DEFINE_TYPE (SwfdecAsSuper, swfdec_as_super, SWFDEC_TYPE_AS_OBJECT)
+G_DEFINE_TYPE (SwfdecAsSuper, swfdec_as_super, SWFDEC_TYPE_AS_FUNCTION)
+
+static SwfdecAsFrame *
+swfdec_as_super_call (SwfdecAsFunction *function)
+{
+ SwfdecAsSuper *super = SWFDEC_AS_SUPER (function);
+ SwfdecAsFunctionClass *klass;
+ SwfdecAsFrame *frame;
+
+ if (super->constructor == NULL) {
+ SWFDEC_FIXME ("figure out what happens when super doesn't have a constructor");
+ return NULL;
+ }
+ klass...
2007 May 18
0
Branch 'as' - libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_function.c libswfdec/swfdec_as_function.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_native_function.c libswfdec/swfdec_as_native_function.h
...rt;
diff --git a/libswfdec/swfdec_as_function.c b/libswfdec/swfdec_as_function.c
index c6a7c92..dd91fcc 100644
--- a/libswfdec/swfdec_as_function.c
+++ b/libswfdec/swfdec_as_function.c
@@ -27,63 +27,32 @@
#include "swfdec_as_stack.h"
#include "swfdec_debug.h"
-G_DEFINE_TYPE (SwfdecAsFunction, swfdec_as_function, SWFDEC_TYPE_AS_OBJECT)
-
-static void
-swfdec_as_function_dispose (GObject *object)
-{
- SwfdecAsFunction *function = SWFDEC_AS_FUNCTION (object);
-
- if (function->script) {
- swfdec_script_unref (function->script);
- function->script = NULL;
- }
- g_free (...
2007 Jul 13
0
12 commits - AUTHORS doc/Makefile.am doc/swfdec-docs.sgml doc/swfdec-sections.txt libswfdec/Makefile.am libswfdec/swfdec_as_array.c libswfdec/swfdec_as_array.h libswfdec/swfdec_as_context.c libswfdec/swfdec_as_function.c libswfdec/swfdec_as_function.h
...- a/doc/swfdec-docs.sgml
+++ b/doc/swfdec-docs.sgml
@@ -27,5 +27,6 @@
<xi:include href="xml/SwfdecAsContext.xml"/>
<xi:include href="xml/SwfdecAsObject.xml"/>
<xi:include href="xml/SwfdecAsArray.xml"/>
+ <xi:include href="xml/SwfdecAsFunction.xml"/>
</chapter>
</book>
diff --git a/doc/swfdec-sections.txt b/doc/swfdec-sections.txt
index fd2f296..7773b37 100644
--- a/doc/swfdec-sections.txt
+++ b/doc/swfdec-sections.txt
@@ -296,4 +296,35 @@ SWFDEC_AS_ARRAY_CLASS
SWFDEC_AS_ARRAY_GET_CLASS
SWFDEC_IS_AS_ARRAY
SWFD...
2007 May 21
0
Branch 'as' - libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_function.c libswfdec/swfdec_as_function.h libswfdec/swfdec_as_native_function.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_script_function.c
...;
SwfdecAsObject *swfdec_as_frame_find_variable (SwfdecAsFrame * frame,
diff --git a/libswfdec/swfdec_as_function.c b/libswfdec/swfdec_as_function.c
index dd91fcc..8928f68 100644
--- a/libswfdec/swfdec_as_function.c
+++ b/libswfdec/swfdec_as_function.c
@@ -83,8 +83,10 @@ swfdec_as_function_call (SwfdecAsFunctio
SWFDEC_AS_VALUE_SET_UNDEFINED (return_value);
klass = SWFDEC_AS_FUNCTION_GET_CLASS (function);
g_assert (klass->call);
- klass->call (function, thisp);
+ klass->call (function);
frame = context->frame;
+ if (thisp)
+ swfdec_as_frame_set_this (frame, thisp);
frame-&g...
2007 Aug 16
0
Branch 'vivi' - 23 commits - libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h libswfdec/swfdec_as_super.c libswfdec/swfdec_as_with.c libswfdec/swfdec_movie.c libswfdec/swfdec_net_stream.c libswfdec/swfdec_sprite_movie.c test/trace vivified/core
...>
Date: Thu Aug 16 13:09:31 2007 +0200
debugging g_print removal #3423
diff --git a/libswfdec/swfdec_as_object.c b/libswfdec/swfdec_as_object.c
index 803d82f..ee112db 100644
--- a/libswfdec/swfdec_as_object.c
+++ b/libswfdec/swfdec_as_object.c
@@ -897,7 +897,6 @@ swfdec_as_object_create (SwfdecAsFunctio
if (native->construct_size) {
type = native->construct_type;
size = native->construct_size;
- g_print ("type is %s\n", g_type_name (type));
break;
}
}
@@ -908,7 +907,6 @@ swfdec_as_object_create (SwfdecAsFunctio
if (SWFDEC_AS_VALUE_IS_OBJECT (&...
2007 Apr 12
0
Branch 'as' - 14 commits - libswfdec-gtk/swfdec_playback_alsa.c libswfdec/swfdec_as_context.c libswfdec/swfdec_as_context.h libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_function.c libswfdec/swfdec_as_function.h
...xt_get_string (SwfdecAsContext * context,
const char * string);
diff --git a/libswfdec/swfdec_as_function.c b/libswfdec/swfdec_as_function.c
index 643fed5..8f404b7 100644
--- a/libswfdec/swfdec_as_function.c
+++ b/libswfdec/swfdec_as_function.c
@@ -139,7 +139,38 @@ swfdec_as_function_call (SwfdecAsFunctio
frame->function_name = function->name;
} else {
frame = swfdec_as_frame_new (thisp, function->script);
- /* FIXME: do the preloading here */
+ SWFDEC_ERROR ("do the preloading here");
}
}
+/*** AS CODE ***/
+
+static void
+swfdec_as_function_construct (Sw...
2007 Aug 17
0
4 commits - libswfdec/swfdec_as_context.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h test/trace
...g 17 21:55:16 2007 +0300
Set __proto__ and __constructor__ properties flags
diff --git a/libswfdec/swfdec_as_object.c b/libswfdec/swfdec_as_object.c
index 46c590d..a5e4b08 100644
--- a/libswfdec/swfdec_as_object.c
+++ b/libswfdec/swfdec_as_object.c
@@ -942,7 +942,8 @@ swfdec_as_object_create (SwfdecAsFunctio
* object.__proto__ = construct.prototype; ]|
**/
void
-swfdec_as_object_set_constructor (SwfdecAsObject *object, SwfdecAsObject *construct, gboolean scripted)
+swfdec_as_object_set_constructor (SwfdecAsObject *object,
+ SwfdecAsObject *construct, gboolean scripted)
{
SwfdecAsValue val;...
2007 Apr 12
0
Branch 'as' - 15 commits - libswfdec/swfdec_as_context.c libswfdec/swfdec_as_context.h libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_function.c libswfdec/swfdec_as_function.h libswfdec/swfdec_as_interpret.c
...t;</informalexample>
+ **/
void
-swfdec_as_object_call (SwfdecAsObject *object, const char *name, guint argc, SwfdecAsValue *argv)
+swfdec_as_object_call (SwfdecAsObject *object, const char *name, guint argc,
+ SwfdecAsValue *argv, SwfdecAsValue *return_value)
{
+ SwfdecAsValue tmp;
+ SwfdecAsFunction *fun;
+
g_return_if_fail (SWFDEC_IS_AS_OBJECT (object));
g_return_if_fail (name != NULL);
g_return_if_fail (argc == 0 || argv != NULL);
+
+ if (return_value)
+ SWFDEC_AS_VALUE_SET_UNDEFINED (return_value);
+ swfdec_as_object_get (object, name, &tmp);
+ if (!SWFDEC_AS_VALUE_IS_OB...
2007 Jul 04
0
Branch 'as' - 25 commits - libswfdec/Makefile.am libswfdec/swfdec_as_boolean.c libswfdec/swfdec_as_boolean.h libswfdec/swfdec_as_context.c libswfdec/swfdec_as_context.h libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_function.c
...action_trace (SwfdecAsContext *cx
/* stack looks like this: [ function, this, arg1, arg2, ... ] */
/* stack must be at least 2 elements big */
static gboolean
-swfdec_action_call (SwfdecAsContext *cx, guint n_args)
+swfdec_action_call (SwfdecAsContext *cx, guint n_args, gboolean use_super)
{
SwfdecAsFunction *fun;
SwfdecAsObject *thisp;
@@ -591,6 +592,13 @@ swfdec_action_call (SwfdecAsContext *cx,
swfdec_as_stack_pop_n (frame->stack, n_args);
swfdec_as_function_call (fun, thisp, n_args, swfdec_as_stack_peek (frame->stack, 0),
swfdec_as_stack_peek (frame->stack, 1));
+ if (...
2007 Apr 04
0
Branch 'as' - 9 commits - libswfdec/swfdec_as_context.c libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_function.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_stack.c libswfdec/swfdec_as_stack.h
...UNDEFINED (swfdec_as_stack_push (context->frame->stack));
}
}
diff --git a/libswfdec/swfdec_as_function.c b/libswfdec/swfdec_as_function.c
index 68e98c5..29ef86e 100644
--- a/libswfdec/swfdec_as_function.c
+++ b/libswfdec/swfdec_as_function.c
@@ -126,9 +126,8 @@ swfdec_as_function_call (SwfdecAsFunctio
if (n_args < function->min_args) {
SwfdecAsStack *stack = context->frame->stack;
if (n_args == 0) {
- SwfdecAsValue value = { SWFDEC_TYPE_AS_UNDEFINED, };
swfdec_as_stack_ensure_size (stack, 1);
- swfdec_as_stack_push (stack, &value);
+ SWFDEC_AS_VALUE_SET_UNDEF...
2007 Aug 20
0
Branch 'vivi' - 60 commits - libswfdec-gtk/swfdec_gtk_loader.c libswfdec/Makefile.am libswfdec/swfdec_as_array.c libswfdec/swfdec_as_context.c libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame_internal.h libswfdec/swfdec_as_interpret.c
...work init code to set constructor and __constructor__ properties correctly
diff --git a/libswfdec/swfdec_as_object.c b/libswfdec/swfdec_as_object.c
index 0bb7209..749b0d7 100644
--- a/libswfdec/swfdec_as_object.c
+++ b/libswfdec/swfdec_as_object.c
@@ -882,6 +882,7 @@ void
swfdec_as_object_create (SwfdecAsFunction *fun, guint n_args,
const SwfdecAsValue *args)
{
+ SwfdecAsValue val;
SwfdecAsObject *new;
SwfdecAsContext *context;
SwfdecAsFunction *cur;
@@ -919,11 +920,27 @@ swfdec_as_object_create (SwfdecAsFunctio
type = SWFDEC_TYPE_AS_OBJECT;
size = sizeof (SwfdecAsObject);
}
-...
2007 Aug 17
0
Branch 'vivi' - 9 commits - libswfdec/swfdec_as_array.c libswfdec/swfdec_as_function.c libswfdec/swfdec_as_function.h libswfdec/swfdec_as_internal.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_native_function.c
...e first time. Especially all members are supposed to be
set already.
diff --git a/libswfdec/swfdec_as_function.c b/libswfdec/swfdec_as_function.c
index 3e9b6dd..879ed9d 100644
--- a/libswfdec/swfdec_as_function.c
+++ b/libswfdec/swfdec_as_function.c
@@ -67,40 +67,31 @@ swfdec_as_function_init (SwfdecAsFunctio
}
/**
- * swfdec_as_function_create:
- * @context: a #SwfdecAsFunction
- * @type: the type of function to create
- * @size: size of @type
+ * swfdec_as_function_set_constructor:
+ * @fun: a #SwfdecAsFunction
*
- * Creates a new function. The function will be of @type. It will be added to
- *...
2007 Jun 27
0
Branch 'as' - 16 commits - configure.ac libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_function.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_script_function.c
...SwfdecConstantPool * constant_pool; /* constant pool currently in use */
diff --git a/libswfdec/swfdec_as_function.c b/libswfdec/swfdec_as_function.c
index 1f3bc2f..aee6b90 100644
--- a/libswfdec/swfdec_as_function.c
+++ b/libswfdec/swfdec_as_function.c
@@ -89,7 +89,7 @@ swfdec_as_function_call (SwfdecAsFunctio
return;
if (thisp)
swfdec_as_frame_set_this (frame, thisp);
- frame->var_object = SWFDEC_AS_OBJECT (frame);
+ frame->is_local = TRUE;
frame->argc = n_args;
frame->argv = args;
frame->return_value = return_value;
diff --git a/libswfdec/swfdec_as_interpret.c b/l...
2007 Jul 02
0
Branch 'as' - 24 commits - configure.ac doc/Makefile.am doc/swfdec-sections.txt libswfdec/Makefile.am libswfdec/swfdec_amf.c libswfdec/swfdec_as_array.c libswfdec/swfdec_as_context.c libswfdec/swfdec_as_context.h libswfdec/swfdec_as_frame.c
...ec_as_function.c
+++ b/libswfdec/swfdec_as_function.c
@@ -25,6 +25,7 @@
#include "swfdec_as_context.h"
#include "swfdec_as_frame.h"
#include "swfdec_as_stack.h"
+#include "swfdec_as_strings.h"
#include "swfdec_debug.h"
G_DEFINE_ABSTRACT_TYPE (SwfdecAsFunction, swfdec_as_function, SWFDEC_TYPE_AS_OBJECT)
diff --git a/libswfdec/swfdec_as_interpret.c b/libswfdec/swfdec_as_interpret.c
index 3b7f5e9..3195a8c 100644
--- a/libswfdec/swfdec_as_interpret.c
+++ b/libswfdec/swfdec_as_interpret.c
@@ -27,6 +27,7 @@
#include "swfdec_as_function.h"
#includ...
2007 Sep 03
0
20 commits - libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_function.c libswfdec/swfdec_as_initialize.as libswfdec/swfdec_as_initialize.h libswfdec/swfdec_as_internal.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_number.c
...ep 3 15:48:22 2007 +0200
don't set __constructor__ in Flash <= 5
diff --git a/libswfdec/swfdec_as_object.c b/libswfdec/swfdec_as_object.c
index 579d315..4472615 100644
--- a/libswfdec/swfdec_as_object.c
+++ b/libswfdec/swfdec_as_object.c
@@ -1011,10 +1011,10 @@ swfdec_as_object_create (SwfdecAsFunctio
swfdec_as_object_set_variable_and_flags (new, SWFDEC_AS_STR_constructor,
&val, SWFDEC_AS_VARIABLE_HIDDEN);
}
- if (context->version <= 5)
- SWFDEC_AS_VALUE_SET_UNDEFINED (&val);
- swfdec_as_object_set_variable_and_flags (new, SWFDEC_AS_STR___constructor__,...
2007 Aug 22
0
163 commits - autogen.sh configure.ac doc/swfdec-sections.txt libswfdec-gtk/swfdec_gtk_player.c libswfdec-gtk/swfdec_gtk_player.h libswfdec-gtk/swfdec_gtk_widget.c libswfdec-gtk/swfdec_source.c libswfdec/Makefile.am libswfdec/swfdec_as_array.c
...lly swfdec_as_object_add_function() but takes some additional
properties relevant for constructors.
diff --git a/libswfdec/swfdec_as_object.c b/libswfdec/swfdec_as_object.c
index b2a3262..f62f59b 100644
--- a/libswfdec/swfdec_as_object.c
+++ b/libswfdec/swfdec_as_object.c
@@ -783,20 +783,54 @@ SwfdecAsFunction *
swfdec_as_object_add_function (SwfdecAsObject *object, const char *name, GType type,
SwfdecAsNative native, guint min_args)
{
+ g_return_val_if_fail (SWFDEC_IS_AS_OBJECT (object), NULL);
+ g_return_val_if_fail (name != NULL, NULL);
+ g_return_val_if_fail (type == 0 || g_type_is_a (type...
2007 Sep 12
0
9 commits - libswfdec/swfdec_as_function.c libswfdec/swfdec_as_initialize.as libswfdec/swfdec_as_initialize.h libswfdec/swfdec_as_object.c libswfdec/swfdec_as_strings.c libswfdec/swfdec_player_as.c test/trace
...+0300
Initialize Function's methods in swfdec_as_initialize.as
diff --git a/libswfdec/swfdec_as_function.c b/libswfdec/swfdec_as_function.c
index c8f4fbe..2bf731e 100644
--- a/libswfdec/swfdec_as_function.c
+++ b/libswfdec/swfdec_as_function.c
@@ -147,7 +147,8 @@ swfdec_as_function_call (SwfdecAsFunctio
/*** AS CODE ***/
-static void
+SWFDEC_AS_NATIVE (101, 10, swfdec_as_function_do_call)
+void
swfdec_as_function_do_call (SwfdecAsContext *context, SwfdecAsObject *fun,
guint argc, SwfdecAsValue *argv, SwfdecAsValue *ret)
{
@@ -166,7 +167,8 @@ swfdec_as_function_do_call (SwfdecAsCont...