search for: nextpc

Displaying 17 results from an estimated 17 matches for "nextpc".

Did you mean: nextp
2008 Jun 02
4
[Bug 16206] New: Charts in Yahoo Finance crash swfdec
http://bugs.freedesktop.org/show_bug.cgi?id=16206 Summary: Charts in Yahoo Finance crash swfdec Product: swfdec Version: git Platform: Other URL: http://finance.yahoo.com/echarts?s=%5EDJI#symbol=%5EDJI; range=1d OS/Version: All Status: NEW Severity: critical Priority: medium
2007 Jan 18
0
Branch 'interpreter' - 2 commits - libswfdec/js libswfdec/swfdec_js_movie.c libswfdec/swfdec_script.c
...->buffer->length; + fp->pc = pc; /* set up stack */ startsp = js_AllocStack (cx, STACKSIZE, &mark); if (!startsp) { @@ -426,7 +513,11 @@ swfdec_script_interpret (SwfdecScript *s ok = spec->exec[version] (cx, action, data, len); if (!ok) goto out; - pc = nextpc; + if (fp->pc == pc) { + fp->pc = pc = nextpc; + } else { + pc = fp->pc; + } } out: @@ -482,6 +573,7 @@ swfdec_script_execute (SwfdecScript *scr frame.script = NULL; frame.varobj = obj; frame.fun = NULL; + frame.swf = script; frame.thisp = obj; fram...
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
...N + 1]; + /* array is for version 3, 4, 5, 6, 7+ */ +} SwfdecActionSpec; + +extern const SwfdecActionSpec actions[256]; +void +swfdec_as_context_run (SwfdecAsContext *context) +{ + SwfdecAsFrame *frame; + SwfdecScript *script; + const SwfdecActionSpec *spec; + guint8 *startpc, *pc, *endpc, *nextpc; + guint action, len; + guint8 *data; + int version; + + g_return_if_fail (SWFDEC_IS_AS_CONTEXT (context)); + + /* setup data */ + frame = context->frame; + if (frame == NULL) + return; + script = frame->script; + version = EXTRACT_VERSION (script->version); + startpc = script...
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
...ut of range", action); - goto internal_error; + goto error; } data = pc + 3; len = pc[1] | pc[2] << 8; if (data + len > endpc) { SWFDEC_ERROR ("action %u length %u out of range", action, len); - goto internal_error; + goto error; } nextpc = pc + 3 + len; } else { @@ -357,7 +361,7 @@ start: if (spec->exec[version] == NULL) { SWFDEC_ERROR ("cannot interpret action %u %s for version %u", action, spec->name ? spec->name : "Unknown", script->version); - goto internal_error; +...
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
...4cb 100644 --- a/libswfdec/swfdec_as_context.c +++ b/libswfdec/swfdec_as_context.c @@ -682,6 +682,7 @@ swfdec_as_context_run (SwfdecAsContext * SwfdecAsFrame *frame, *last_frame; SwfdecScript *script; const SwfdecActionSpec *spec; + SwfdecActionExec exec; guint8 *startpc, *pc, *endpc, *nextpc; #ifndef G_DISABLE_ASSERT SwfdecAsValue *check; @@ -813,12 +814,22 @@ start: nextpc = pc + 1; } /* check action is valid */ - if (spec->exec[version] == NULL) { - SWFDEC_WARNING ("cannot interpret action %3u 0x%02X %s for version %u, skipping it", action, -...
2008 Apr 12
2
[Bug 15471] New: segmentation fault while seeking in youtube.com
...e *) 0x0 spec = (const SwfdecActionSpec *) 0xb230bd30 startpc = (const guint8 *) 0xb15cd08 "CWS\a?\206\001" pc = <value optimized out> endpc = (const guint8 *) 0xb1753de " ---Type <return> to continue, or q <return> to quit--- nextpc = (const guint8 *) 0xb170edc "\027\226\r" exitpc = (const guint8 *) 0xb170f0d "O\226\004" check = (SwfdecAsValue *) 0x0 action = 82 len = 0 data = (const guint8 *) 0x0 original_version = 4294967295 step = (void (*)(SwfdecAs...
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
.../libswfdec/swfdec_as_context.c +++ b/libswfdec/swfdec_as_context.c @@ -762,14 +762,12 @@ swfdec_as_context_run (SwfdecAsContext *context) SwfdecAsFrame *frame, *last_frame; SwfdecScript *script; const SwfdecActionSpec *spec; - SwfdecActionExec exec; const guint8 *startpc, *pc, *endpc, *nextpc, *exitpc; #ifndef G_DISABLE_ASSERT SwfdecAsValue *check; #endif guint action, len; const guint8 *data; - int version; guint original_version; void (* step) (SwfdecAsDebugger *debugger, SwfdecAsContext *context); gboolean check_block; /* some opcodes avoid a scope check */ @@ -8...
2007 Oct 22
0
6 commits - doc/Makefile.am doc/swfdec-sections.txt libswfdec-gtk/swfdec_gtk_player.c libswfdec/swfdec_as_context.c libswfdec/swfdec_as_context.h libswfdec/swfdec_as_internal.h libswfdec/swfdec_player.c libswfdec/swfdec_player.h
...rame = context->frame->next; original_version = context->version; start: + if (!swfdec_as_context_check_continue (context)) + goto error; /* setup data */ frame = context->frame; if (frame == context->last_frame) @@ -892,6 +894,10 @@ start: frame->pc = pc = nextpc; check_block = TRUE; } else { + if (frame->pc < pc && + !swfdec_as_context_check_continue (context)) { + goto error; + } pc = frame->pc; check_block = FALSE; } @@ -1339,3 +1345,28 @@ swfdec_as_context_startup (SwfdecAsContext *context, gui...
2007 Dec 02
2
[Bug 13491] New: 5min.com player causes assertion
...*) 0x36a5d80 last_frame = (SwfdecAsFrame *) 0x0 spec = <value optimized out> startpc = (const guint8 *) 0x2aaab0367de0 "CWS\b\004\023\b" pc = (const guint8 *) 0x4dc3f10 "" endpc = (const guint8 *) 0x2aaab03e90e4 "" nextpc = (const guint8 *) 0x2aaab0378406 "\226\002" exitpc = (const guint8 *) 0x2aaab037864f "O\226\004" check = <value optimized out> action = 82 len = <value optimized out> data = (const guint8 *) 0x0 original_version = 8...
2007 Sep 13
0
5 commits - libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame_internal.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_scope.c libswfdec/swfdec_as_scope.h libswfdec/swfdec_as_script_function.c
...rame); /* decode next action */ action = *pc; @@ -847,7 +848,7 @@ start: SWFDEC_WARNING ("cannot interpret action %3u 0x%02X %s for version %u, skipping it", action, action, spec->name ? spec->name : "Unknown", script->version); frame->pc = pc = nextpc; - check_scope = TRUE; + check_block = TRUE; continue; } SWFDEC_WARNING ("cannot interpret action %3u 0x%02X %s for version %u, using version %u instead", @@ -875,10 +876,10 @@ start: /* FIXME: do this via flag? */ if (frame->pc == pc) { frame->pc =...
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
..._function, 0, -1, { NULL, NULL, NULL, swfdec_action_define_function, swfdec_action_define_function } }, [0x8f] = { "Try", NULL }, /* version 5 */ [0x94] = { "With", NULL }, @@ -2560,7 +2581,10 @@ swfdec_script_interpret (SwfdecScript *s guint8 *startpc, *pc, *endpc, *nextpc; JSBool ok = JS_TRUE; void *mark; - jsval *startsp, *endsp, *checksp; + jsval *startsp; +#ifndef G_DISABLE_ASSERT + jsval *checksp; +#endif int stack_check; guint action, len; guint8 *data; @@ -2636,8 +2660,8 @@ swfdec_script_interpret (SwfdecScript *s goto out; } fp-&g...
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
...SWFDEC_WARNING ("cannot interpret action %3u 0x%02X %s for version %u, skipping it", action, action, spec->name ? spec->name : "Unknown", script->version); - /* FIXME: figure out what flash player does here */ - goto error; + frame->pc = pc = nextpc; + check_scope = TRUE; + continue; } if (spec->remove > 0) { swfdec_as_stack_ensure_size (stack, spec->remove); diff-tree f09bcc6abc2629a38f1524d647ec5ee1e6c2b612 (from d4d1998c7e04a7651d89a2c3fb56eb90ba3d474d) Author: Benjamin Otte <otte at gnome.org> Date...
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
...#39;t support scripts", version); return NULL; } @@ -2754,340 +319,6 @@ swfdec_script_unref (SwfdecScript *scrip g_free (script); } -#if 0 -JSBool -swfdec_script_interpret (SwfdecScript *script, JSContext *cx, jsval *rval) -{ - JSStackFrame *fp; - guint8 *startpc, *pc, *endpc, *nextpc; - JSBool ok = JS_TRUE; - void *mark; - jsval *startsp; -#ifndef G_DISABLE_ASSERT - jsval *checksp; -#endif - int stack_check; - guint action, len; - guint8 *data; - guint version; - const SwfdecActionSpec *spec; - - /* set up general stuff */ - swfdec_script_ref (script); - version =...
2007 Jan 25
0
Branch 'interpreter' - 28 commits - configure.ac libswfdec/js libswfdec/swfdec_buffer.c libswfdec/swfdec_edittext_movie.c libswfdec/swfdec_js.c libswfdec/swfdec_js_global.c libswfdec/swfdec_js.h libswfdec/swfdec_js_movie.c libswfdec/swfdec_player.c
...LL, NULL, swfdec_action_call_method, swfdec_action_call_method, swfdec_action_call_method } }, [0x53] = { "NewMethod", NULL }, /* version 6 */ [0x54] = { "InstanceOf", NULL }, @@ -726,7 +803,7 @@ swfdec_script_interpret (SwfdecScript *s guint8 *startpc, *pc, *endpc, *nextpc; JSBool ok = JS_TRUE; void *mark; - jsval *startsp, *endsp; + jsval *startsp, *endsp, *checksp; int stack_check; guint action, len; guint8 *data; @@ -800,6 +877,8 @@ swfdec_script_interpret (SwfdecScript *s goto internal_error; } if (spec->add < 0) { + /...
2007 Jun 05
0
Branch 'as' - 8 commits - libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_number.c libswfdec/swfdec_as_scope.h
...nymore", pc, startpc, endpc); goto error; } + if (check_scope) + swfdec_as_frame_check_scope (frame); /* decode next action */ action = *pc; @@ -508,8 +512,10 @@ start: /* FIXME: do this via flag? */ if (frame->pc == pc) { frame->pc = pc = nextpc; + check_scope = TRUE; } else { pc = frame->pc; + check_scope = FALSE; } if (frame == context->frame) { #ifndef G_DISABLE_ASSERT diff --git a/libswfdec/swfdec_as_frame.c b/libswfdec/swfdec_as_frame.c index b36e1e4..de18973 100644 --- a/libswfdec/swfdec_as_fram...
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
...LL, NULL, swfdec_action_call_method, swfdec_action_call_method, swfdec_action_call_method } }, [0x53] = { "NewMethod", NULL }, /* version 6 */ [0x54] = { "InstanceOf", NULL }, @@ -726,7 +803,7 @@ swfdec_script_interpret (SwfdecScript *s guint8 *startpc, *pc, *endpc, *nextpc; JSBool ok = JS_TRUE; void *mark; - jsval *startsp, *endsp; + jsval *startsp, *endsp, *checksp; int stack_check; guint action, len; guint8 *data; @@ -800,6 +877,8 @@ swfdec_script_interpret (SwfdecScript *s goto internal_error; } if (spec->add < 0) { + /...
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
...4cb 100644 --- a/libswfdec/swfdec_as_context.c +++ b/libswfdec/swfdec_as_context.c @@ -682,6 +682,7 @@ swfdec_as_context_run (SwfdecAsContext * SwfdecAsFrame *frame, *last_frame; SwfdecScript *script; const SwfdecActionSpec *spec; + SwfdecActionExec exec; guint8 *startpc, *pc, *endpc, *nextpc; #ifndef G_DISABLE_ASSERT SwfdecAsValue *check; @@ -813,12 +814,22 @@ start: nextpc = pc + 1; } /* check action is valid */ - if (spec->exec[version] == NULL) { - SWFDEC_WARNING ("cannot interpret action %3u 0x%02X %s for version %u, skipping it", action, -...