Displaying 20 results from an estimated 24 matches for "startpc".
Did you mean:
startp
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
...15:49:54 2007 +0200
properly exit when pc == endpc
diff --git a/libswfdec/swfdec_as_context.c b/libswfdec/swfdec_as_context.c
index e332c5b..035e1fd 100644
--- a/libswfdec/swfdec_as_context.c
+++ b/libswfdec/swfdec_as_context.c
@@ -797,6 +797,10 @@ start:
goto start;
}
if (pc < startpc || pc >= endpc) {
+ if (pc == endpc) {
+ swfdec_as_frame_return (frame, NULL);
+ goto start;
+ }
SWFDEC_ERROR ("pc %p not in valid range [%p, %p) anymore", pc, startpc, endpc);
goto error;
}
diff-tree c4ba717de9a7bcabb49dcf5efd94c0dfd4a1fea5 (from parents)...
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
...run (SwfdecAsContext *
int version;
SwfdecAsContextClass *klass;
void (* step) (SwfdecAsContext *context);
+ gboolean check_scope; /* some opcodes avoid a scope check */
g_return_if_fail (SWFDEC_IS_AS_CONTEXT (context));
if (context->frame == NULL)
@@ -437,6 +438,7 @@ start:
startpc = script->buffer->data;
endpc = startpc + script->buffer->length;
pc = frame->pc;
+ check_scope = TRUE;
while (TRUE) {
if (pc == endpc) {
@@ -447,6 +449,8 @@ start:
SWFDEC_ERROR ("pc %p not in valid range [%p, %p) anymore", pc, startpc, endpc);...
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
...me.org>
Date: Thu Mar 29 13:34:07 2007 +0200
implement swfdec_context_as_return
diff --git a/libswfdec/swfdec_as_context.c b/libswfdec/swfdec_as_context.c
index 0de1748..cbbc378 100644
--- a/libswfdec/swfdec_as_context.c
+++ b/libswfdec/swfdec_as_context.c
@@ -325,10 +325,14 @@ start:
startpc = script->buffer->data;
endpc = startpc + script->buffer->length;
- while (pc != endpc) {
+ while (TRUE) {
+ if (pc == endpc) {
+ swfdec_as_context_return (context, NULL);
+ goto start;
+ }
if (pc < startpc || pc >= endpc) {
SWFDEC_ERROR ("p...
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 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
...RSION - MINSCRIPTVERSION + 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...
2007 Jan 18
0
Branch 'interpreter' - 2 commits - libswfdec/js libswfdec/swfdec_js_movie.c libswfdec/swfdec_script.c
...rtain actions */
+#if 0
{
char *foo = swfdec_script_print_action (action, data, len);
if (foo == NULL)
return FALSE;
g_print ("%s\n", foo);
}
+#endif
return TRUE;
}
@@ -362,6 +448,7 @@ swfdec_script_interpret (SwfdecScript *s
/* set up the script */
startpc = pc = script->buffer->data;
endpc = startpc + script->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...
2007 Jan 31
0
Branch 'interpreter' - 3 commits - libswfdec/js libswfdec/swfdec_script.c
...Script *s
while (TRUE) {
/* check pc */
- if (pc == endpc) /* needed for scripts created via DefineFunction */
+ if (pc == endpc) {
+ /* scripts created via DefineFunction or the Return action use this way out */
+ *rval = fp->rval;
break;
+ }
if (pc < startpc || pc >= endpc) {
SWFDEC_ERROR ("pc %p not in valid range [%p, %p) anymore", pc, startpc, endpc);
goto internal_error;
diff-tree 71b090ccdeedb1e96b2f8590844844139b00bd85 (from fa4f57c436b5f6232efacfa2b4ac94d14af1f409)
Author: Benjamin Otte <otte@gnome.org>
Date: W...
2008 Apr 12
2
[Bug 15471] New: segmentation fault while seeking in youtube.com
...wfdecAsNativeFunction *) 0xab80228
rval = {type = SWFDEC_AS_TYPE_UNDEFINED, value = {boolean = 0,
number = 0, string = 0x0, object = 0x0}}
frame = (SwfdecAsFrame *) 0xdce4670
last_frame = (SwfdecAsFrame *) 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 = (...
2007 Feb 16
0
11 commits - libswfdec/swfdec_font.c libswfdec/swfdec_font.h libswfdec/swfdec_js_movie.c libswfdec/swfdec_script.c libswfdec/swfdec_script.h test/.gitignore test/trace
...amp; SWFDEC_SCRIPT_PRELOAD_ROOT ||
+ script->flags & SWFDEC_SCRIPT_PRELOAD_PARENT) {
+ g_assert_not_reached ();
+ }
+ if (script->flags & SWFDEC_SCRIPT_PRELOAD_GLOBAL)
+ fp->vars[preload_reg++] = OBJECT_TO_JSVAL (player->jsobj);
+ }
/* set up the script */
startpc = pc = script->buffer->data;
endpc = startpc + script->buffer->length;
diff --git a/libswfdec/swfdec_script.h b/libswfdec/swfdec_script.h
index 93f59b9..82d2169 100644
--- a/libswfdec/swfdec_script.h
+++ b/libswfdec/swfdec_script.h
@@ -29,6 +29,18 @@ G_BEGIN_DECLS
//typedef struct...
2007 Oct 28
0
9 commits - configure.ac libswfdec/swfdec_as_context.c libswfdec/swfdec_audio_internal.h libswfdec/swfdec_codec_audio.c libswfdec/swfdec_codec_gst.c libswfdec/swfdec_sound.c
...p_block (frame);
- pc = frame->pc;
- if (frame != context->frame)
- goto start;
- }
if (pc == exitpc) {
swfdec_as_frame_return (frame, NULL);
goto start;
@@ -878,6 +871,13 @@ start:
SWFDEC_ERROR ("pc %p not in valid range [%p, %p) anymore", pc, startpc, endpc);
goto error;
}
+ if (check_block && (pc < frame->block_start || pc >= frame->block_end)) {
+ SWFDEC_LOG ("code exited block");
+ swfdec_as_frame_pop_block (frame);
+ pc = frame->pc;
+ if (frame != context->frame)
+ goto...
2007 Dec 02
2
[Bug 13491] New: 5min.com player causes assertion
...WFDEC_AS_TYPE_STRING, value = {boolean = -1346003103,
number = 2.3177895010821281e-310, string = 0x2aaaafc59f61 "",
object = 0x2aaaafc59f61}}
frame = (SwfdecAsFrame *) 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 &quo...
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
...8..18afbe2 100644
--- a/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...
2009 Jan 27
5
Replacing HDD in x4500
The vendor wanted to come in and replace an HDD in the 2nd X4500, as it
was "constantly busy", and since our x4500 has always died miserably in
the past when a HDD dies, they wanted to replace it before the HDD
actually died.
The usual was done, HDD replaced, resilvering started and ran for about
50 minutes. Then the system hung, same as always, all ZFS related
commands would just
2007 Jan 26
0
Branch 'interpreter' - 9 commits - libswfdec/js libswfdec/Makefile.am libswfdec/swfdec_debugger.c libswfdec/swfdec_debugger.h libswfdec/swfdec_edittext_movie.c libswfdec/swfdec_event.c libswfdec/swfdec_js.c libswfdec/swfdec_js_global.c
...ec_debugger_remove_script (script->debugger, script);
+ return;
+ }
if (script->refcount > 0)
return;
@@ -1266,13 +1304,37 @@ swfdec_script_interpret (SwfdecScript *s
goto out;
}
- /* only valid return value */
while (TRUE) {
/* check pc */
if (pc < startpc || pc >= endpc) {
SWFDEC_ERROR ("pc %p not in valid range [%p, %p] anymore", pc, startpc, endpc);
goto internal_error;
}
+
+ /* run interrupt handler */
+ if (cx->runtime->interruptHandler) {
+ jsval tmp;
+ switch (cx->runtime->interruptHa...
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
...(action & 0x80) {
len = swfdec_bits_get_u16 (bits);
data = bits->ptr;
@@ -1634,8 +1755,10 @@ swfdec_script_interpret (SwfdecScript *s
while (TRUE) {
/* check pc */
+ if (pc == endpc) /* needed for scripts created via DefineFunction */
+ break;
if (pc < startpc || pc >= endpc) {
- SWFDEC_ERROR ("pc %p not in valid range [%p, %p] anymore", pc, startpc, endpc);
+ SWFDEC_ERROR ("pc %p not in valid range [%p, %p) anymore", pc, startpc, endpc);
goto internal_error;
}
diff-tree bd449d3ebe7adc1a6fc90beafef2f192a6c23...
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
...run (SwfdecAsContext *context)
{
@@ -367,9 +352,11 @@ start:
return;
script = frame->script;
stack = frame->stack;
- version = EXTRACT_VERSION (script->version);
+ version = SWFDEC_AS_EXTRACT_SCRIPT_VERSION (script->version);
+ context->version = script->version;
startpc = script->buffer->data;
endpc = startpc + script->buffer->length;
+ pc = frame->pc;
while (TRUE) {
if (pc == endpc) {
@@ -383,7 +370,7 @@ start:
/* decode next action */
action = *pc;
- spec = actions + action;
+ spec = swfdec_as_actions + action;...
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
...Script *s
while (TRUE) {
/* check pc */
- if (pc == endpc) /* needed for scripts created via DefineFunction */
+ if (pc == endpc) {
+ /* scripts created via DefineFunction or the Return action use this way out */
+ *rval = fp->rval;
break;
+ }
if (pc < startpc || pc >= endpc) {
SWFDEC_ERROR ("pc %p not in valid range [%p, %p) anymore", pc, startpc, endpc);
goto internal_error;
diff-tree 71b090ccdeedb1e96b2f8590844844139b00bd85 (from fa4f57c436b5f6232efacfa2b4ac94d14af1f409)
Author: Benjamin Otte <otte@gnome.org>
Date: W...
2008 Feb 20
12
no luck with Xen....
Perhaps someone has ideas on this topic, a recent attempt to play with Xen was a reather unlucky event, all what I will be able to demonstrate on that system is a PV ONNV domU which
ikely will not be very attractive to the audience :(
HW: U40M2, 2 x 2 core AMD revF procs, 8GB MEM, Phonix BIOS 1.5 (latest)
1 x 200GB internal SATA drive
SW: dom0 ONNV build 82, latest VirtManager from
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
...t.c
index 96c23e4..b2a74cb 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, skippi...
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
...dec_action_print_define_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
g...