Displaying 20 results from an estimated 24 matches for "swfdec_is_as_value".
2007 Oct 26
0
8 commits - doc/swfdec-sections.txt libswfdec/swfdec_as_context.c libswfdec/swfdec_as_context.h libswfdec/swfdec_as_interpret.c test/trace
...>Function);
swfdec_as_object_mark (context->Function_prototype);
swfdec_as_object_mark (context->Object);
@@ -685,10 +685,10 @@ swfdec_as_context_throw (SwfdecAsContext *context, const SwfdecAsValue *value)
{
g_return_if_fail (SWFDEC_IS_AS_CONTEXT (context));
g_return_if_fail (SWFDEC_IS_AS_VALUE (value));
- g_return_if_fail (!context->throwing);
+ g_return_if_fail (!context->exception);
- context->throwing = TRUE;
- context->throw_value = *value;
+ context->exception = TRUE;
+ context->exception_value = *value;
}
/**
@@ -706,14 +706,14 @@ swfdec_as_context_cat...
2007 Mar 28
0
Branch 'as' - 3 commits - libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_context.h libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h libswfdec/swfdec_as_types.c
...IS_AS_CONTEXT (context));
g_return_if_fail (len > 0);
g_return_if_fail (context->memory >= len);
@@ -166,7 +168,7 @@ swfdec_as_string_mark (const char *strin
void
swfdec_as_value_mark (SwfdecAsValue *value)
{
- g_return_if_fail (SWFDEC_AS_IS_VALUE (value));
+ g_return_if_fail (SWFDEC_IS_AS_VALUE (value));
if (SWFDEC_AS_VALUE_IS_OBJECT (value)) {
swfdec_as_object_mark (SWFDEC_AS_VALUE_GET_OBJECT (value));
@@ -187,7 +189,7 @@ swfdec_as_context_mark_roots (gpointer k
void
swfdec_as_context_gc (SwfdecAsContext *context)
{
- g_return_if_fail (SWFDEC_AS_IS_CONTEXT (context));
+ g_...
2007 Apr 11
0
Branch 'as' - 4 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_types.c libswfdec/swfdec_as_types.h
...c_as_types.c
+++ b/libswfdec/swfdec_as_types.c
@@ -227,6 +227,9 @@ swfdec_as_value_to_integer (SwfdecAsCont
SwfdecAsObject *
swfdec_as_value_to_object (SwfdecAsContext *context, const SwfdecAsValue *value)
{
+ g_return_val_if_fail (SWFDEC_IS_AS_CONTEXT (context), NULL);
+ g_return_val_if_fail (SWFDEC_IS_AS_VALUE (value), NULL);
+
switch (value->type) {
case SWFDEC_TYPE_AS_UNDEFINED:
case SWFDEC_TYPE_AS_NULL:
@@ -244,3 +247,46 @@ swfdec_as_value_to_object (SwfdecAsConte
}
}
+/**
+ * swfdec_as_value_to_boolean:
+ * @context: a #SwfdecAsContext
+ * @value: value to convert
+ *
+ * Conver...
2007 Aug 15
0
Branch 'vivi' - 13 commits - doc/swfdec-sections.txt libswfdec/swfdec_as_debugger.h libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_types.h vivified/core vivified/ui
...ap)->wrap = object;
+ g_hash_table_insert (app->wraps, object, wrap);
+ return wrap;
+}
+
+void
+vivi_wrap_value (ViviApplication *app, SwfdecAsValue *dest, const SwfdecAsValue *src)
+{
+ g_return_if_fail (VIVI_IS_APPLICATION (app));
+ g_return_if_fail (dest != NULL);
+ g_return_if_fail (SWFDEC_IS_AS_VALUE (src));
+
+ switch (src->type) {
+ case SWFDEC_AS_TYPE_UNDEFINED:
+ case SWFDEC_AS_TYPE_BOOLEAN:
+ case SWFDEC_AS_TYPE_NUMBER:
+ case SWFDEC_AS_TYPE_NULL:
+ *dest = *src;
+ break;
+ case SWFDEC_AS_TYPE_STRING:
+ SWFDEC_AS_VALUE_SET_STRING (dest,
+ swfdec_as_conte...
2007 Dec 17
0
2 commits - doc/Makefile.am doc/swfdec-sections.txt NEWS
...N Standard>
+SwfdecPlayerPrivate
SwfdecPlayerClass
SWFDEC_PLAYER
SWFDEC_IS_PLAYER
@@ -284,6 +287,7 @@ SWFDEC_AS_VALUE_SET_OBJECT
swfdec_as_value_to_primitive
swfdec_as_value_to_debug
swfdec_as_double_to_string
+swfdec_as_integer_to_string
swfdec_as_str_concat
<SUBSECTION Standard>
SWFDEC_IS_AS_VALUE
@@ -344,6 +348,7 @@ swfdec_as_object_set_variable_and_flags
swfdec_as_object_add_variable
swfdec_as_object_set_variable_flags
swfdec_as_object_unset_variable_flags
+swfdec_as_object_has_variable
swfdec_as_object_delete_variable
swfdec_as_object_delete_all_variables
SwfdecAsVariableForeach
2007 Oct 26
0
3 commits - libswfdec/swfdec_as_context.c libswfdec/swfdec_as_context.h libswfdec/swfdec_as_interpret.c
...->ref_count > 0)
+ return;
+
if (!try_data->use_register)
g_free (try_data->variable_name);
g_free (try_data);
@@ -2575,14 +2591,15 @@ swfdec_action_try_end_finally (SwfdecAsFrame *frame, gpointer data)
g_return_if_fail (SWFDEC_IS_AS_FRAME (frame));
g_return_if_fail (SWFDEC_IS_AS_VALUE (error));
- swfdec_as_frame_pop_block (frame);
-
cx = SWFDEC_AS_OBJECT (frame)->context;
+ // finally has ended and we had exception stored, throw it
if (!cx->throwing) {
cx->throwing = TRUE;
cx->throw_value = *error;
}
+
+ swfdec_as_frame_pop_block (frame);
}...
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
...JECT (val);
if (SWFDEC_IS_MOVIE (obj)) {
diff --git a/libswfdec/swfdec_as_types.c b/libswfdec/swfdec_as_types.c
index 889fceb..b2a73cc 100644
--- a/libswfdec/swfdec_as_types.c
+++ b/libswfdec/swfdec_as_types.c
@@ -121,25 +121,25 @@ swfdec_as_value_to_string (SwfdecAsConte
g_return_val_if_fail (SWFDEC_IS_AS_VALUE (value), SWFDEC_AS_STR_EMPTY);
switch (value->type) {
- case SWFDEC_TYPE_AS_STRING:
+ case SWFDEC_AS_TYPE_STRING:
return SWFDEC_AS_VALUE_GET_STRING (value);
- case SWFDEC_TYPE_AS_UNDEFINED:
+ case SWFDEC_AS_TYPE_UNDEFINED:
if (context->version > 6)
return S...
2007 Apr 05
0
Branch 'as' - 9 commits - configure.ac libswfdec/swfdec_as_context.c libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_function.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h
...WFDEC_AS_STR_OBJECT_OBJECT;
default:
g_assert_not_reached ();
return SWFDEC_AS_STR_EMPTY;
}
}
+
+double
+swfdec_as_value_to_number (SwfdecAsContext *context, const SwfdecAsValue *value)
+{
+ g_return_val_if_fail (SWFDEC_IS_AS_CONTEXT (context), 0.0);
+ g_return_val_if_fail (SWFDEC_IS_AS_VALUE (value), 0.0);
+
+ switch (value->type) {
+ case SWFDEC_TYPE_AS_UNDEFINED:
+ case SWFDEC_TYPE_AS_NULL:
+ return (context->version >= 7) ? NAN : 0.0;
+ case SWFDEC_TYPE_AS_BOOLEAN:
+ return SWFDEC_AS_VALUE_GET_BOOLEAN (value) ? 1 : 0;
+ case SWFDEC_TYPE_AS_NUMBER:
+...
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
...r (SwfdecAsCont
SwfdecAsObject *
swfdec_as_value_to_object (SwfdecAsContext *context, const SwfdecAsValue *value)
{
+ SwfdecAsFunction *fun;
+ SwfdecAsObject *ret;
SwfdecAsValue val;
+ const char *s;
g_return_val_if_fail (SWFDEC_IS_AS_CONTEXT (context), NULL);
g_return_val_if_fail (SWFDEC_IS_AS_VALUE (value), NULL);
@@ -527,92 +530,91 @@ swfdec_as_value_to_object (SwfdecAsConte
case SWFDEC_AS_TYPE_NULL:
return NULL;
case SWFDEC_AS_TYPE_NUMBER:
- return swfdec_as_number_new (context, SWFDEC_AS_VALUE_GET_NUMBER (value));
+ s = SWFDEC_AS_STR_Number;
+ break;
ca...
2007 Jun 28
0
Branch 'as' - 2 commits - doc/swfdec-sections.txt libswfdec/swfdec_as_types.c libswfdec/swfdec_as_types.h
...swfdec_as_value_to_string
+SWFDEC_AS_VALUE_SET_STRING
+SWFDEC_AS_VALUE_SET_NULL
+SWFDEC_AS_VALUE_GET_OBJECT
swfdec_as_value_to_object
+SWFDEC_AS_VALUE_SET_OBJECT
swfdec_as_value_to_primitive
-swfdec_as_value_to_string
+swfdec_as_double_to_string
+swfdec_as_str_concat
+<SUBSECTION Standard>
+SWFDEC_IS_AS_VALUE
+SWFDEC_AS_VALUE_IS_UNDEFINED
+SWFDEC_AS_VALUE_IS_BOOLEAN
+SWFDEC_AS_VALUE_IS_NUMBER
+SWFDEC_AS_VALUE_IS_STRING
+SWFDEC_AS_VALUE_IS_NULL
+SWFDEC_AS_VALUE_IS_OBJECT
</SECTION>
diff --git a/libswfdec/swfdec_as_types.c b/libswfdec/swfdec_as_types.c
index 6b8f3a5..504245d 100644
--- a/libswfdec/...
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
...+ b/libswfdec/swfdec_as_types.c
@@ -230,24 +230,29 @@ swfdec_as_value_to_printable (SwfdecAsCo
double
swfdec_as_value_to_number (SwfdecAsContext *context, const SwfdecAsValue *value)
{
+ SwfdecAsValue tmp;
+
g_return_val_if_fail (SWFDEC_IS_AS_CONTEXT (context), 0.0);
g_return_val_if_fail (SWFDEC_IS_AS_VALUE (value), 0.0);
- switch (value->type) {
+ tmp = *value;
+ swfdec_as_value_to_primitive (&tmp);
+
+ switch (tmp.type) {
case SWFDEC_AS_TYPE_UNDEFINED:
case SWFDEC_AS_TYPE_NULL:
return (context->version >= 7) ? NAN : 0.0;
case SWFDEC_AS_TYPE_BOOLEAN:
- re...
2008 Jan 07
0
3 commits - libswfdec-gtk/swfdec_gtk_loader.c libswfdec/swfdec_as_array.c libswfdec/swfdec_asbroadcaster.c libswfdec/swfdec_as_function.c libswfdec/swfdec_as_types.c libswfdec/swfdec_xml.c
...>context, idx);
+ var = swfdec_as_integer_to_string (SWFDEC_AS_OBJECT (array)->context, idx);
swfdec_as_object_get_variable (SWFDEC_AS_OBJECT (array), var, value);
}
@@ -433,7 +433,7 @@ swfdec_as_array_set_value (SwfdecAsArray *array, gint32 idx,
g_assert (idx >= 0);
g_assert (SWFDEC_IS_AS_VALUE (value));
- var = swfdec_as_double_to_string (SWFDEC_AS_OBJECT (array)->context, idx);
+ var = swfdec_as_integer_to_string (SWFDEC_AS_OBJECT (array)->context, idx);
swfdec_as_object_set_variable (SWFDEC_AS_OBJECT (array), var, value);
}
@@ -454,7 +454,7 @@ swfdec_as_array_foreach_ap...
2007 Aug 07
0
13 commits - libswfdec-gtk/Makefile.am libswfdec-gtk/swfdec_gtk_keys.c libswfdec-gtk/swfdec_gtk_keys.h libswfdec-gtk/swfdec_gtk_widget.c libswfdec/Makefile.am libswfdec/swfdec_as_types.c libswfdec/swfdec.h libswfdec/swfdec_initialize.as
...ec/swfdec_as_types.c
+++ b/libswfdec/swfdec_as_types.c
@@ -575,34 +575,34 @@ swfdec_as_value_to_object (SwfdecAsConte
gboolean
swfdec_as_value_to_boolean (SwfdecAsContext *context, const SwfdecAsValue *value)
{
-g_return_val_if_fail (SWFDEC_IS_AS_CONTEXT (context), FALSE);
-g_return_val_if_fail (SWFDEC_IS_AS_VALUE (value), FALSE);
+ g_return_val_if_fail (SWFDEC_IS_AS_CONTEXT (context), FALSE);
+ g_return_val_if_fail (SWFDEC_IS_AS_VALUE (value), FALSE);
-/* FIXME: what do we do when called in flash 4? */
-switch (value->type) {
-case SWFDEC_AS_TYPE_UNDEFINED:
-case SWFDEC_AS_TYPE_NULL:
-return FALSE;
-...
2007 Jun 28
0
Branch 'as' - 4 commits - doc/Makefile.am doc/swfdec-docs.sgml doc/swfdec-sections.txt libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_types.c libswfdec/swfdec_as_types.h
...n if you can avoid it.
- *
- * Returns: a garbage collected string representing @value.
- **/
-const char *
-swfdec_as_value_to_printable (SwfdecAsContext *context, const SwfdecAsValue *value)
-{
- g_return_val_if_fail (SWFDEC_IS_AS_CONTEXT (context), SWFDEC_AS_STR_EMPTY);
- g_return_val_if_fail (SWFDEC_IS_AS_VALUE (value), SWFDEC_AS_STR_EMPTY);
-
- switch (value->type) {
- case SWFDEC_AS_TYPE_UNDEFINED:
- return SWFDEC_AS_STR_undefined;
- default:
- break;
- }
- return swfdec_as_value_to_string (context, value);
-}
-
double
swfdec_as_value_to_number (SwfdecAsContext *context, const Sw...
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
...*variable, const SwfdecAsValue *value)
+swfdec_as_object_set_variable_and_flags (SwfdecAsObject *object,
+ const char *variable, const SwfdecAsValue *value, guint default_flags)
{
SwfdecAsObjectClass *klass;
@@ -563,7 +566,7 @@ swfdec_as_object_set_variable (SwfdecAsO
g_return_if_fail (SWFDEC_IS_AS_VALUE (value));
klass = SWFDEC_AS_OBJECT_GET_CLASS (object);
- klass->set (object, variable, value);
+ klass->set (object, variable, value, default_flags);
}
/**
@@ -987,12 +990,13 @@ swfdec_as_object_add_variable (SwfdecAsO
g_return_if_fail (SWFDEC_IS_AS_FUNCTION (get));
g_return_...
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
...1,12 @@ error:
}
void
-swfdec_as_context_return (SwfdecAsContext *context, SwfdecAsValue *retval)
+swfdec_as_context_return (SwfdecAsContext *context)
{
g_return_if_fail (SWFDEC_IS_AS_CONTEXT (context));
g_return_if_fail (context->frame != NULL);
- g_return_if_fail (retval == NULL || SWFDEC_IS_AS_VALUE (retval));
context->frame = context->frame->next;
- swfdec_as_stack_ensure_left (context->frame->stack, 1);
- if (retval) {
- *swfdec_as_stack_push (context->frame->stack) = *retval;
- } else {
- SWFDEC_AS_VALUE_SET_UNDEFINED (swfdec_as_stack_push (context->fra...
2007 Mar 29
0
Branch 'as' - 9 commits - configure.ac doc/swfdec-sections.txt libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_context.h libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_stack.c
...+397,23 @@ start:
}
}
-internal_error:
+error:
return;
}
+void
+swfdec_as_context_return (SwfdecAsContext *context, SwfdecAsValue *retval)
+{
+ g_return_if_fail (SWFDEC_IS_AS_CONTEXT (context));
+ g_return_if_fail (context->frame != NULL);
+ g_return_if_fail (retval == NULL || SWFDEC_IS_AS_VALUE (retval));
+
+ context->frame = context->frame->next;
+ swfdec_as_stack_ensure_left (context->frame->stack, 1);
+ if (retval) {
+ swfdec_as_stack_push (context->frame->stack, retval);
+ } else {
+ SwfdecAsValue value = { SWFDEC_TYPE_AS_UNDEFINED, };
+ swfdec_as_sta...
2007 Aug 17
0
Branch 'vivi' - 13 commits - libswfdec/swfdec_as_context.c libswfdec/swfdec_as_debugger.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_script_function.c test/trace vivified/core vivified/ui
...d);
diff --git a/libswfdec/swfdec_as_object.c b/libswfdec/swfdec_as_object.c
index ee112db..4dbcb1d 100644
--- a/libswfdec/swfdec_as_object.c
+++ b/libswfdec/swfdec_as_object.c
@@ -562,6 +562,12 @@ swfdec_as_object_set_variable (SwfdecAsO
g_return_if_fail (variable != NULL);
g_return_if_fail (SWFDEC_IS_AS_VALUE (value));
+ if (object->context->debugger) {
+ SwfdecAsDebugger *debugger = object->context->debugger;
+ SwfdecAsDebuggerClass *dklass = SWFDEC_AS_DEBUGGER_CLASS (klass);
+ if (dklass->set_variable)
+ dklass->set_variable (debugger, object->context, object, var...
2007 Aug 26
0
Changes to 'refs/tags/0.5.2'
...uit command/function
remove debugging g_print's
make sure handlers are properly cleared so setting them up again later does work.
properly accumulate signal return values
add support for new frames and finishing frames
fix function name typo
check for NULL in SWFDEC_IS_AS_VALUE
allow referencing values in the debugged context
honour playback state in debugger
hoour even more playback state
frames are special
implement onStartFrame and onExitFrame breakpoint callbacks
add swfdec_as_frame_get_function_name() function
add support for...
2007 Jul 18
0
12 commits - configure.ac doc/swfdec-sections.txt libswfdec-gtk/swfdec_playback_alsa.c libswfdec/jpeg libswfdec/Makefile.am libswfdec/swfdec_amf.c libswfdec/swfdec_as_array.c libswfdec/swfdec_as_boolean.h libswfdec/swfdec_as_context.c
...alue = *val;
}
static void
@@ -959,17 +960,6 @@ swfdec_as_object_init_context (SwfdecAsC
SWFDEC_TYPE_AS_OBJECT, swfdec_as_object_toString, 0);
}
-void
-swfdec_as_variable_set (SwfdecAsVariable *var, const SwfdecAsValue *value)
-{
- g_return_if_fail (var != NULL);
- g_return_if_fail (SWFDEC_IS_AS_VALUE (value));
-
- if (var->flags & SWFDEC_AS_VARIABLE_READONLY)
- return;
- var->value = *value;
-}
-
/**
* swfdec_as_object_get_debug:
* @object: a #SwfdecAsObject
diff --git a/libswfdec/swfdec_as_types.c b/libswfdec/swfdec_as_types.c
index 8282996..e248805 100644
--- a/libswfdec/s...