Displaying 16 results from an estimated 16 matches for "swfdec_action_start_drag".
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 28
0
Branch 'as' - 5 commits - libswfdec-gtk/swfdec_playback_alsa.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_movie.c test/trace
...fdec_action_remove_sprite, swfdec_action_remove_sprite } },
[SWFDEC_AS_ACTION_TRACE] = { "Trace", NULL, 1, 0, { NULL, swfdec_action_trace, swfdec_action_trace, swfdec_action_trace, swfdec_action_trace } },
[SWFDEC_AS_ACTION_START_DRAG] = { "StartDrag", NULL, -1, 0, { NULL, swfdec_action_start_drag, swfdec_action_start_drag, swfdec_action_start_drag, swfdec_action_start_drag } },
[SWFDEC_AS_ACTION_END_DRAG] = { "EndDrag", NULL, 0, 0, { NULL, swfdec_action_end_drag, swfdec_action_end_drag, swfdec_action_end_drag, swfdec_action_end_drag } },
diff-tree fd7044406415e0cea602c1ed36ef29...
2007 Jan 29
0
Branch 'interpreter' - 18 commits - libswfdec/swfdec_image.c libswfdec/swfdec_image.h libswfdec/swfdec_js.c libswfdec/swfdec_js_color.c libswfdec/swfdec_js_sound.c libswfdec/swfdec_pattern.c libswfdec/swfdec_scriptable.c libswfdec/swfdec_script.c
...sp[i];
- cx->fp->sp[i] = tmp;
+ tmp = fp->sp[j];
+ fp->sp[j] = fp->sp[i];
+ fp->sp[i] = tmp;
j--;
i++;
}
@@ -1006,6 +1009,51 @@ swfdec_action_set_target2 (JSContext *cx
return swfdec_action_do_set_target (cx, JSVAL_TO_OBJECT (val));
}
+static JSBool
+swfdec_action_start_drag (JSContext *cx, guint action, const guint8 *data, guint len)
+{
+ JSStackFrame *fp = cx->fp;
+ guint stack_size = fp->sp - fp->spbase;
+ guint n_args = 1;
+
+ if (stack_size < 3)
+ return JS_FALSE;
+ if (!swfdec_eval_jsval (cx, NULL, &fp->sp[-1]))
+ return JS_FALSE;
+...
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
...fdec_action_remove_sprite, swfdec_action_remove_sprite } },
- [SWFDEC_AS_ACTION_TRACE] = { "Trace", NULL, 1, 0, { NULL, swfdec_action_trace, swfdec_action_trace, swfdec_action_trace, swfdec_action_trace } },
- [SWFDEC_AS_ACTION_START_DRAG] = { "StartDrag", NULL, -1, 0, { NULL, swfdec_action_start_drag, swfdec_action_start_drag, swfdec_action_start_drag, swfdec_action_start_drag } },
- [SWFDEC_AS_ACTION_END_DRAG] = { "EndDrag", NULL, 0, 0, { NULL, swfdec_action_end_drag, swfdec_action_end_drag, swfdec_action_end_drag, swfdec_action_end_drag } },
- [SWFDEC_AS_ACTION_STRING_LESS] = { &q...
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
...,
[SWFDEC_AS_ACTION_REMOVE_SPRITE] = { "RemoveSprite", NULL },
[SWFDEC_AS_ACTION_TRACE] = { "Trace", NULL, 1, 0, { NULL, swfdec_action_trace, swfdec_action_trace, swfdec_action_trace, swfdec_action_trace } },
#if 0
[0x27] = { "StartDrag", NULL, -1, 0, { NULL, swfdec_action_start_drag, swfdec_action_start_drag, swfdec_action_start_drag, swfdec_action_start_drag } },
[0x28] = { "EndDrag", NULL, 0, 0, { NULL, swfdec_action_end_drag, swfdec_action_end_drag, swfdec_action_end_drag, swfdec_action_end_drag } },
- [0x29] = { "StringLess", NULL },
- /* version 7...
2007 Apr 04
0
Branch 'as' - 4 commits - libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_interpret.h libswfdec/swfdec_as_object.c libswfdec/swfdec_as_types.c libswfdec/swfdec_as_types.h
...+ jsval val;
+
+ val = cx->fp->sp[-1];
+ cx->fp->sp--;
+ if (!JSVAL_IS_OBJECT (val) || JSVAL_IS_NULL (val)) {
+ SWFDEC_WARNING ("target is not an object");
+ return JS_TRUE;
+ }
+ return swfdec_action_do_set_target (cx, JSVAL_TO_OBJECT (val));
+}
+
+static void
+swfdec_action_start_drag (SwfdecAsContext *cx, guint action, const guint8 *data, guint len)
+{
+ JSStackFrame *fp = cx->fp;
+ guint n_args = 1;
+
+ if (!swfdec_script_ensure_stack (cx, 3))
+ return JS_FALSE;
+ if (!swfdec_eval_jsval (cx, NULL, &fp->sp[-1]))
+ return JS_FALSE;
+ if (swfdec_value_to_numb...
2007 Oct 15
0
8 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_sound.c libswfdec/swfdec_sound.h test/trace
...: Mon Oct 15 18:15:44 2007 +0200
free startDrag action from swfdec_as_context_eval()
diff --git a/libswfdec/swfdec_as_interpret.c b/libswfdec/swfdec_as_interpret.c
index 2d8b733..a3c0c15 100644
--- a/libswfdec/swfdec_as_interpret.c
+++ b/libswfdec/swfdec_as_interpret.c
@@ -1599,9 +1599,6 @@ swfdec_action_start_drag (SwfdecAsContext *cx, guint action, const guint8 *data,
guint stack_size = 3;
swfdec_as_stack_ensure_size (cx, 3);
- if (swfdec_as_interpret_eval (cx, NULL, swfdec_as_stack_peek (cx, 1)) == SWFDEC_AS_STR_EMPTY) {
- SWFDEC_AS_VALUE_SET_OBJECT (swfdec_as_stack_peek (cx, 1), cx->frame-&...
2007 Mar 05
0
11 commits - configure.ac libswfdec/swfdec_js_movie.c libswfdec/swfdec_root_movie.c libswfdec/swfdec_root_movie.h libswfdec/swfdec_script.c libswfdec/swfdec_sprite.c libswfdec/swfdec_sprite.h libswfdec/swfdec_sprite_movie.c libswfdec/swfdec_swf_decoder.c
...t;fp->sp[-1];
lval = cx->fp->sp[-2];
- l = swfdec_action_to_number (cx, lval);
- r = swfdec_action_to_number (cx, rval);
+ l = swfdec_value_to_number (cx, lval);
+ r = swfdec_value_to_number (cx, rval);
switch (action) {
case 0x0e:
cond = l == r;
@@ -1340,7 +1340,7 @@ swfdec_action_start_drag (JSContext *cx,
return JS_FALSE;
if (!swfdec_eval_jsval (cx, NULL, &fp->sp[-1]))
return JS_FALSE;
- if (swfdec_action_to_number (cx, fp->sp[-3])) {
+ if (swfdec_value_to_number (cx, fp->sp[-3])) {
jsval tmp;
if (stack_size < 7)
return JS_FALSE;
@@ -16...
2007 Jul 07
0
Branch 'as' - 7 commits - libswfdec/swfdec_as_context.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h libswfdec/swfdec_as_super.c libswfdec/swfdec_as_super.h libswfdec/swfdec_as_with.c test/trace
...->object == frame->thisp) {
+ super->object = super->object->prototype;
+ }
+ }
+ } else {
SWFDEC_ERROR ("no function named %s on object %s", name ? name : "unknown", obj ? G_OBJECT_TYPE_NAME(obj) : "unknown");
}
}
@@ -1313,7 +1322,7 @@ swfdec_action_start_drag (SwfdecAsContex
*swfdec_as_stack_peek (stack, 2) = *swfdec_as_stack_peek (stack, 1);
swfdec_as_object_get_variable (SWFDEC_AS_VALUE_GET_OBJECT (swfdec_as_stack_peek (stack, 2)),
SWFDEC_AS_STR_startDrag, swfdec_as_stack_peek (stack, 1));
- swfdec_action_call (cx, n_args, FALSE);
+ swf...
2007 Mar 09
0
17 commits - libswfdec/js libswfdec/swfdec_js.c libswfdec/swfdec_js_global.c libswfdec/swfdec_js.h libswfdec/swfdec_js_movie.c libswfdec/swfdec_movie.c libswfdec/swfdec_player.c libswfdec/swfdec_player_internal.h libswfdec/swfdec_root_movie.c
...CMAUint32 (cx, fp->sp[-3], &n_args))
return JS_FALSE;
- if (n_args + 3 > (guint) (fp->sp - fp->spbase))
+ if (!swfdec_script_ensure_stack (cx, n_args + 3))
return JS_FALSE;
if (!JS_ValueToObject (cx, fp->sp[-2], &obj))
@@ -1343,16 +1380,15 @@ static JSBool
swfdec_action_start_drag (JSContext *cx, guint action, const guint8 *data, guint len)
{
JSStackFrame *fp = cx->fp;
- guint stack_size = fp->sp - fp->spbase;
guint n_args = 1;
- if (stack_size < 3)
+ if (!swfdec_script_ensure_stack (cx, 3))
return JS_FALSE;
if (!swfdec_eval_jsval (cx, NULL, &...
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
...;target is not an object");
- return JS_TRUE;
- }
- return swfdec_action_do_set_target (cx, JSVAL_TO_OBJECT (val));
+ return;
+ }
+ /* FIXME: allow non-movieclips as targets? */
+ swfdec_as_frame_set_target (cx->frame, SWFDEC_AS_VALUE_GET_OBJECT (val));
}
+#if 0
static void
swfdec_action_start_drag (SwfdecAsContext *cx, guint action, const guint8 *data, guint len)
{
@@ -1858,17 +1836,19 @@ swfdec_action_print_store_register (guin
}
return g_strdup_printf ("StoreRegister %u", (guint) *data);
}
+#endif
static char *
swfdec_action_print_set_target (guint action, const guint...
2007 Feb 06
0
109 commits - configure.ac libswfdec/js libswfdec/Makefile.am libswfdec/swfdec_bits.c libswfdec/swfdec_bits.h libswfdec/swfdec_buffer.c libswfdec/swfdec_button_movie.c libswfdec/swfdec_codec_screen.c libswfdec/swfdec_color.c libswfdec/swfdec_color.h
...7 @@ swfdec_action_set_target2 (JSContext *cx
val = cx->fp->sp[-1];
cx->fp->sp--;
- if (!JSVAL_IS_OBJECT (val)) {
+ if (!JSVAL_IS_OBJECT (val) || JSVAL_IS_NULL (val)) {
SWFDEC_WARNING ("target is not an object");
return JS_TRUE;
}
@@ -1034,7 +1034,7 @@ swfdec_action_start_drag (JSContext *cx,
fp->sp[-6] = fp->sp[-5];
fp->sp[-5] = tmp;
}
- if (!JSVAL_IS_OBJECT (fp->sp[-1])) {
+ if (!JSVAL_IS_OBJECT (fp->sp[-1]) || JSVAL_IS_NULL (fp->sp[-1])) {
fp->sp -= n_args + 2;
return JS_TRUE;
}
@@ -1084,7 +1084,7 @@ swfdec_action_new_o...
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
...dec_action_get_target (cx);
- if (movie)
- swfdec_movie_load (movie, url, target);
+ if (SWFDEC_IS_MOVIE (cx->frame->target))
+ swfdec_movie_load (SWFDEC_MOVIE (cx->frame->target), url, target);
else
SWFDEC_WARNING ("no movie to load");
}
@@ -1289,8 +1261,7 @@ swfdec_action_start_drag (SwfdecAsContex
swfdec_as_stack_ensure_size (stack, 3);
if (swfdec_as_interpret_eval (cx, NULL, swfdec_as_stack_peek (stack, 1)) == SWFDEC_AS_STR_EMPTY) {
- SWFDEC_AS_VALUE_SET_OBJECT (swfdec_as_stack_peek (stack, 1),
- SWFDEC_AS_OBJECT (swfdec_action_get_target (cx)));
+ SWFDEC_AS_V...
2007 Jan 31
0
Branch 'interpreter' - 20 commits - autogen.sh configure.ac libswfdec/js libswfdec/swfdec_debug.h libswfdec/swfdec_js.c libswfdec/swfdec_js_color.c libswfdec/swfdec_js_movie.c libswfdec/swfdec_movie.c libswfdec/swfdec_movie.h libswfdec/swfdec_script.c
...7 @@ swfdec_action_set_target2 (JSContext *cx
val = cx->fp->sp[-1];
cx->fp->sp--;
- if (!JSVAL_IS_OBJECT (val)) {
+ if (!JSVAL_IS_OBJECT (val) || JSVAL_IS_NULL (val)) {
SWFDEC_WARNING ("target is not an object");
return JS_TRUE;
}
@@ -1034,7 +1034,7 @@ swfdec_action_start_drag (JSContext *cx,
fp->sp[-6] = fp->sp[-5];
fp->sp[-5] = tmp;
}
- if (!JSVAL_IS_OBJECT (fp->sp[-1])) {
+ if (!JSVAL_IS_OBJECT (fp->sp[-1]) || JSVAL_IS_NULL (fp->sp[-1])) {
fp->sp -= n_args + 2;
return JS_TRUE;
}
@@ -1084,7 +1084,7 @@ swfdec_action_new_o...
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
...frame->stack);
- if (!swfdec_action_call (cx, n_args)) {
+ if (!swfdec_action_call (cx, n_args, use_super)) {
SWFDEC_ERROR ("no function named %s on object %s", name ? name : "unknown", obj ? G_OBJECT_TYPE_NAME(obj) : "unknown");
}
}
@@ -1299,7 +1314,7 @@ swfdec_action_start_drag (SwfdecAsContex
*swfdec_as_stack_peek (stack, 2) = *swfdec_as_stack_peek (stack, 1);
swfdec_as_object_get_variable (SWFDEC_AS_VALUE_GET_OBJECT (swfdec_as_stack_peek (stack, 2)),
SWFDEC_AS_STR_startDrag, swfdec_as_stack_peek (stack, 1));
- swfdec_action_call (cx, n_args);
+ swfdec_act...
2007 Aug 27
0
8 commits - libswfdec/swfdec_as_boolean.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_number.c libswfdec/swfdec_initialize.as libswfdec/swfdec_initialize.h test/trace vivified/core
...that action was completely broken
diff --git a/libswfdec/swfdec_as_interpret.c b/libswfdec/swfdec_as_interpret.c
index 44e7c5a..e8f6e64 100644
--- a/libswfdec/swfdec_as_interpret.c
+++ b/libswfdec/swfdec_as_interpret.c
@@ -1303,30 +1303,33 @@ swfdec_action_set_target2 (SwfdecAsConte
static void
swfdec_action_start_drag (SwfdecAsContext *cx, guint action, const guint8 *data, guint len)
{
- guint n_args = 1;
+ SwfdecRect rect, *rectp = NULL;
+ SwfdecMovie *movie;
+ gboolean center;
+ guint stack_size = 3;
swfdec_as_stack_ensure_size (cx, 3);
if (swfdec_as_interpret_eval (cx, NULL, swfdec_as_stack_peek...