search for: swfdec_as_value_to_integer

Displaying 20 results from an estimated 63 matches for "swfdec_as_value_to_integer".

2007 Jun 12
0
Branch 'as' - 3 commits - libswfdec/swfdec_as_array.c libswfdec/swfdec_as_context.c libswfdec/swfdec_as_math.c libswfdec/swfdec_as_native_function.c libswfdec/swfdec_as_number.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_string.c
...pFlags needs some limiteations for Flash 5"); + if (cx->version < 6) { + SWFDEC_FIXME ("ASSetPropFlags needs some limitations for Flash 5"); } if (!SWFDEC_AS_VALUE_IS_OBJECT (&argv[0])) return; obj = SWFDEC_AS_VALUE_GET_OBJECT (&argv[0]); - flags[0] = swfdec_as_value_to_integer (object->context, &argv[2]); + flags[0] = swfdec_as_value_to_integer (cx, &argv[2]); /* be sure to not delete the NATIVE flag */ flags[0] &= 7; - flags[1] = (argc > 3) ? swfdec_as_value_to_integer (object->context, &argv[3]) : -1; + flags[1] = (argc > 3) ? swfde...
2007 Sep 02
0
libswfdec/swfdec_as_array.c libswfdec/swfdec_as_string.c
.../libswfdec/swfdec_as_string.c +++ b/libswfdec/swfdec_as_string.c @@ -99,6 +99,9 @@ swfdec_as_string_lastIndexOf (SwfdecAsCo gsize len; const char *s; + if (argc < 1) + return; + s = swfdec_as_value_to_string (object->context, &argv[0]); if (argc == 2) { int offset = swfdec_as_value_to_integer (object->context, &argv[1]); @@ -127,6 +130,9 @@ swfdec_as_string_indexOf (SwfdecAsContex int offset=0, len, i=-1; const char *s, *t = NULL; + if (argc < 1) + return; + s = swfdec_as_value_to_string (object->context, &argv[0]); if (argc == 2) offset = swfdec_...
2007 Sep 04
0
5 commits - doc/Makefile.am doc/swfdec-sections.txt libswfdec/swfdec_as_array.c libswfdec/swfdec_as_boolean.c libswfdec/swfdec_asbroadcaster.c libswfdec/swfdec_as_internal.h libswfdec/swfdec_as_native_function.c libswfdec/swfdec_as_native_function.h
...ue *val = va_arg (varargs, SwfdecAsValue *); + *val = argv[i]; + } + break; + case 'b': + { + gboolean *b = va_arg (varargs, gboolean *); + *b = swfdec_as_value_to_boolean (cx, &argv[i]); + } + break; + case 'i': + { + int *j = va_arg (varargs, int *); + *j = swfdec_as_value_to_integer (cx, &argv[i]); + } + break; + case 'n': + { + double *d = va_arg (varargs, double *); + *d = swfdec_as_value_to_number (cx, &argv[i]); + } + break; + case 's': + { + const char **s = va_arg (varargs, const char **); + *s = swfdec_as_value_to_string (cx, &a...
2007 Aug 24
0
7 commits - libswfdec/swfdec_as_context.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_object.h libswfdec/swfdec_as_string.c test/trace
...fdec_as_string_substr (SwfdecAsContext *cx, SwfdecAsObject *object, guint argc, SwfdecAsValue *argv, SwfdecAsValue *ret) { - const char *string = swfdec_as_object_to_string (cx, object); + const char *string = swfdec_as_string_object_to_string (cx, object); int from, to, len; from = swfdec_as_value_to_integer (cx, &argv[0]); @@ -471,7 +484,7 @@ void swfdec_as_string_substring (SwfdecAsContext *cx, SwfdecAsObject *object, guint argc, SwfdecAsValue *argv, SwfdecAsValue *ret) { - const char *string = swfdec_as_object_to_string (cx, object); + const char *string = swfdec_as_string_object_to_str...
2007 Nov 14
0
9 commits - libswfdec/swfdec_as_string.c libswfdec/swfdec_color_as.c libswfdec/swfdec_interval.c test/image test/trace
...c7..2fad7cf 100644 --- a/libswfdec/swfdec_as_string.c +++ b/libswfdec/swfdec_as_string.c @@ -223,18 +223,23 @@ swfdec_as_string_fromCharCode_5 (SwfdecAsContext *cx, SwfdecAsObject *object, char *s; GByteArray *array = g_byte_array_new (); - for (i = 0; i < argc; i++) { - c = ((guint) swfdec_as_value_to_integer (cx, &argv[i])) % 65536; - if (c > 255) { - append = c / 256; + if (argc > 0) { + for (i = 0; i < argc; i++) { + c = ((guint) swfdec_as_value_to_integer (cx, &argv[i])) % 65536; + if (c > 255) { + append = c / 256; + g_byte_array_append (array, &append,...
2007 Oct 14
0
4 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_sound.c test/trace
...; if (movie) { *object = movie; return TRUE; @@ -694,58 +705,59 @@ extern struct { static void swfdec_action_get_property (SwfdecAsContext *cx, guint action, const guint8 *data, guint len) { - SwfdecAsValue *val; - SwfdecAsObject *obj; + SwfdecMovie *movie; guint id; - id = swfdec_as_value_to_integer (cx, swfdec_as_stack_pop (cx)); - if (id > (cx->version > 4 ? 21 : 18)) { - SWFDEC_WARNING ("trying to SetProperty %u, not allowed", id); - goto out; - } - val = swfdec_as_stack_peek (cx, 1); - swfdec_as_interpret_eval (cx, NULL, val); - if (SWFDEC_AS_VALUE_IS_UNDEFINE...
2007 Jun 28
0
Branch 'as' - 2 commits - doc/swfdec-sections.txt libswfdec/swfdec_as_types.c libswfdec/swfdec_as_types.h
...index 30ac93b..4d93f11 100644 --- a/doc/swfdec-sections.txt +++ b/doc/swfdec-sections.txt @@ -184,10 +184,31 @@ SWFDEC_TYPE_GTK_LOADER <TITLE>SwfdecAsValue</TITLE> SwfdecAsValueType SwfdecAsValue +SWFDEC_AS_VALUE_SET_UNDEFINED +SWFDEC_AS_VALUE_GET_BOOLEAN swfdec_as_value_to_boolean -swfdec_as_value_to_integer +SWFDEC_AS_VALUE_SET_BOOLEAN +SWFDEC_AS_VALUE_GET_NUMBER swfdec_as_value_to_number +swfdec_as_value_to_integer +SWFDEC_AS_VALUE_SET_INT +SWFDEC_AS_VALUE_SET_NUMBER +SWFDEC_AS_VALUE_GET_STRING +swfdec_as_value_to_string +SWFDEC_AS_VALUE_SET_STRING +SWFDEC_AS_VALUE_SET_NULL +SWFDEC_AS_VALUE_GET_OBJE...
2007 Jun 01
0
Branch 'as' - 2 commits - libswfdec/Makefile.am libswfdec/swfdec_as_strings.c libswfdec/swfdec_as_types.c libswfdec/swfdec_interval.c libswfdec/swfdec_interval.h libswfdec/swfdec_player_as.c libswfdec/swfdec_player.c
..._FunctionClass) { - fun = argv[0]; - object = JS_GetParent (cx, object); - if (object == NULL) { - SWFDEC_WARNING ("function has no parent?!"); - return JS_TRUE; + object = SWFDEC_AS_VALUE_GET_OBJECT (&argv[0]); + if (SWFDEC_IS_AS_FUNCTION (object)) { + msecs = swfdec_as_value_to_integer (obj->context, &argv[1]); + if (msecs < MIN_INTERVAL_TIME) { + SWFDEC_INFO ("interval duration is %u, making it %u msecs", msecs, MIN_INTERVAL_TIME); + msecs = MIN_INTERVAL_TIME; } - first_arg = 2; + id = swfdec_interval_new_function (player, msecs, TRUE,...
2007 Jul 26
0
5 commits - doc/Makefile.am doc/swfdec-sections.txt libswfdec/Makefile.am libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h libswfdec/swfdec_initialize.as libswfdec/swfdec_initialize.h libswfdec/swfdec_player_as.c
...cx, native_funcs[i].name, + native_funcs[i].func, 0); + } + } + return NULL; +} + static void swfdec_player_ASnative (SwfdecAsContext *cx, SwfdecAsObject *obj, guint argc, SwfdecAsValue *argv, SwfdecAsValue *rval) { - guint i, x, y; + SwfdecAsFunction *func; + guint x, y; x = swfdec_as_value_to_integer (cx, &argv[0]); y = swfdec_as_value_to_integer (cx, &argv[1]); - for (i = 0; native_funcs[i].func != NULL; i++) { - if (native_funcs[i].x == x && native_funcs[i].y == y) { - SwfdecAsFunction *func = swfdec_as_native_function_new (cx, native_funcs[i].name, - native_fu...
2007 Aug 20
0
3 commits - libswfdec/swfdec_as_context.c test/trace
...gs[0]) + if (cur_flags == ((cur_flags &~ flags[1]) | flags[0])) return TRUE; swfdec_as_context_ASSetPropFlags_set_one_flag (object, s, flags); @@ -1039,7 +1039,7 @@ swfdec_as_context_ASSetPropFlags (Swfdec return; obj = SWFDEC_AS_VALUE_GET_OBJECT (&argv[0]); flags[0] = swfdec_as_value_to_integer (cx, &argv[2]); - flags[1] = (argc > 3) ? swfdec_as_value_to_integer (cx, &argv[3]) : -1; + flags[1] = (argc > 3) ? swfdec_as_value_to_integer (cx, &argv[3]) : 0; if (SWFDEC_AS_VALUE_IS_NULL (&argv[1])) { swfdec_as_object_foreach (obj, swfdec_as_context_ASSetPropFlag...
2007 Aug 17
0
2 commits - libswfdec/swfdec_as_array.c test/trace
..._as_array_get_length (SwfdecAsObject *object) +swfdec_as_array_get_length_as_integer (SwfdecAsObject *object) { SwfdecAsValue val; gint32 length; @@ -83,6 +84,16 @@ swfdec_as_array_get_length (SwfdecAsObje swfdec_as_object_get_variable (object, SWFDEC_AS_STR_length, &val); length = swfdec_as_value_to_integer (object->context, &val); + return length; +} + +static gint32 +swfdec_as_array_get_length (SwfdecAsObject *object) +{ + gint32 length; + + length = swfdec_as_array_get_length_as_integer (object); + if (length < 0) return 0; @@ -105,7 +116,8 @@ typedef struct { gint32 num...
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
...obj); + else + SWFDEC_AS_VALUE_SET_UNDEFINED (val); + return SWFDEC_AS_STR_EMPTY; +} + +#define CONSTANT_INDEX 39 +static void +swfdec_action_get_property (SwfdecAsContext *cx, guint action, const guint8 *data, guint len) +{ + SwfdecAsValue *val; + SwfdecAsObject *obj; + guint id; + + id = swfdec_as_value_to_integer (cx, swfdec_as_stack_pop (cx->frame->stack)); + if (id > (cx->version > 4 ? 21 : 18)) { + SWFDEC_WARNING ("trying to SetProperty %u, not allowed", id); + goto out; + } + val = swfdec_as_stack_peek (cx->frame->stack, 1); + swfdec_as_interpret_eval (cx, NULL,...
2007 Apr 11
0
Branch 'as' - 4 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_types.c libswfdec/swfdec_as_types.h
...te <otte@gnome.org> Date: Wed Apr 11 21:09:20 2007 +0200 new function swfdec_as_value_to_boolean diff --git a/libswfdec/swfdec_as_types.c b/libswfdec/swfdec_as_types.c index 2446681..ee8c403 100644 --- a/libswfdec/swfdec_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_UN...
2007 Aug 31
0
4 commits - libswfdec/swfdec_as_number.c libswfdec/swfdec_as_strings.c libswfdec/swfdec_player_as.c test/trace
...sContext *cx return NULL; } +// same as ASnative, but also sets prototype +static void +swfdec_player_ASconstructor (SwfdecAsContext *cx, SwfdecAsObject *obj, + guint argc, SwfdecAsValue *argv, SwfdecAsValue *rval) +{ + SwfdecAsValue val; + SwfdecAsFunction *func; + guint x, y; + + x = swfdec_as_value_to_integer (cx, &argv[0]); + y = swfdec_as_value_to_integer (cx, &argv[1]); + + func = swfdec_get_asnative (cx, x, y); + if (func) { + SWFDEC_AS_VALUE_SET_OBJECT (&val, swfdec_as_object_new (cx)); + swfdec_as_object_set_variable_and_flags (SWFDEC_AS_OBJECT (func), + SWFDEC_AS_STR_prototyp...
2007 Oct 22
0
5 commits - libswfdec/swfdec_html_parser.c libswfdec/swfdec_text_field_movie_as.c libswfdec/swfdec_text_field_movie.c test/trace
...as.c b/libswfdec/swfdec_text_field_movie_as.c index 48057e8..bef2ca6 100644 --- a/libswfdec/swfdec_text_field_movie_as.c +++ b/libswfdec/swfdec_text_field_movie_as.c @@ -942,15 +942,16 @@ swfdec_text_field_movie_setTextFormat (SwfdecAsContext *cx, i = 0; if (argc >= 2) { start_index = swfdec_as_value_to_integer (cx, &argv[i++]); - start_index = CLAMP (start_index, 0, (int)text->input->len); + start_index = CLAMP (start_index, 0, g_utf8_strlen (text->input->str, -1)); } else { start_index = 0; } if (argc >= 3) { end_index = swfdec_as_value_to_integer (cx, &ar...
2007 Jul 27
0
libswfdec/swfdec_asbroadcaster.c
...(&val) || - !SWFDEC_IS_AS_ARRAY (listeners = SWFDEC_AS_VALUE_GET_OBJECT (&val))) + if (!SWFDEC_AS_VALUE_IS_OBJECT (&val)) return; + listeners = SWFDEC_AS_VALUE_GET_OBJECT (&val); swfdec_as_object_get_variable (listeners, SWFDEC_AS_STR_length, &val); length = swfdec_as_value_to_integer (cx, &val);
2007 Nov 07
0
14 commits - libswfdec/swfdec_as_context.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_interpret.h libswfdec/swfdec_net_stream.c libswfdec/swfdec_script.c libswfdec/swfdec_sprite_movie.c libswfdec/swfdec_tag.c libswfdec/swfdec_text_field_movie.c
...} else { + SWFDEC_AS_VALUE_SET_INT (val, uni[0]); + g_free (uni); + } } } static void swfdec_action_ascii_to_char (SwfdecAsContext *cx, guint action, const guint8 *data, guint len) { - char *s; SwfdecAsValue *val = swfdec_as_stack_peek (cx, 1); - gunichar c = ((guint) swfdec_as_value_to_integer (cx, val)) % 65536; - s = g_ucs4_to_utf8 (&c, 1, NULL, NULL, NULL); - if (s == NULL) { - g_warning ("conversion of character %u failed", (guint) c); - SWFDEC_AS_VALUE_SET_STRING (val, SWFDEC_AS_STR_EMPTY); - } else { - SWFDEC_AS_VALUE_SET_STRING (val, swfdec_as_context_g...
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
..._as_array_get_length (SwfdecAsObject *object) +swfdec_as_array_get_length_as_integer (SwfdecAsObject *object) { SwfdecAsValue val; gint32 length; @@ -83,6 +84,16 @@ swfdec_as_array_get_length (SwfdecAsObje swfdec_as_object_get_variable (object, SWFDEC_AS_STR_length, &val); length = swfdec_as_value_to_integer (object->context, &val); + return length; +} + +static gint32 +swfdec_as_array_get_length (SwfdecAsObject *object) +{ + gint32 length; + + length = swfdec_as_array_get_length_as_integer (object); + if (length < 0) return 0; @@ -105,7 +116,8 @@ typedef struct { gint32 num...
2007 Jun 17
2
Branch 'as' - libswfdec/swfdec_as_interpret.c
libswfdec/swfdec_as_interpret.c | 3 ++- 1 files changed, 2 insertions(+), 1 deletion(-) New commits: diff-tree 38fbc1389267e593b44041018cbb1750bdcce0fb (from aaca94203d8a0ccb8feb32c0d57df3401fca0350) Author: Benjamin Otte <otte at gnome.org> Date: Sun Jun 17 14:19:45 2007 +0200 actually convert the values to a string when comparing strings diff --git
2007 Jun 20
1
Branch 'as' - 2 commits - libswfdec/swfdec_as_interpret.c
libswfdec/swfdec_as_interpret.c | 5 ++--- 1 files changed, 2 insertions(+), 3 deletions(-) New commits: diff-tree 9c5cb7cb9f6278896bc8a1e7cd7fb541b079c8de (from 1e19719b58b5cfcb800c81a5f5432c3ad662dbbc) Author: Benjamin Otte <otte at gnome.org> Date: Wed Jun 20 20:58:52 2007 +0200 the modulo arguments were mixed diff --git a/libswfdec/swfdec_as_interpret.c