search for: spbase

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

Did you mean: pbase
2010 Jun 14
1
script development for Unconditional Density and Probability estimation
...(SoilVegHydro, vegcode) AnnualDepth <- Marsh[,'meanAnnualDepthAve'] cattail_0 <- Marsh[,'cattail'] == '0' # no need to run for 8 species, automate if possible cattail_1 <- Marsh[,'cattail'] == '1' # yes need to run for 8 species spbase.rate.d1 <- sum(cattail_1)/(sum(cattail_1) + sum(cattail_0) ) annualDepth.density <- density(AnnualDepth) # this line needs either interactively defined or automatically cycle thru a number of metrics cattail.d0.density <- density(AnnualDepth[cattail_0]) cattail.d1.density <- density...
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
...h stack + * space is available, the stack is filled up with JSVAL_VOID. + * + * Returns: JS_TRUE on success or JS_FALSE on OOM + **/ +static inline JSBool +swfdec_script_ensure_stack (JSContext *cx, guint n_elements) +{ + JSStackFrame *fp = cx->fp; + guint current = (guint) (fp->sp - fp->spbase); + + if (current >= n_elements) + return JS_TRUE; + + if (n_elements > (guint) (fp->spend - fp->spbase)) { + SWFDEC_ERROR ("FIXME: implement stack expansion, we got an overflow (want %u, have %u)", + n_elements, (fp->spend - fp->spbase)); + return JS_FALSE; +...
2007 Mar 11
0
10 commits - libswfdec/js libswfdec/swfdec_js_color.c libswfdec/swfdec_js_connection.c libswfdec/swfdec_js_movie.c libswfdec/swfdec_js_net_stream.c libswfdec/swfdec_js_video.c libswfdec/swfdec_js_xml.c libswfdec/swfdec_script.c player/.gitignore
...fdec/swfdec_script.c index 2860e24..4b17af1 100644 --- a/libswfdec/swfdec_script.c +++ b/libswfdec/swfdec_script.c @@ -650,8 +650,16 @@ swfdec_action_call (JSContext *cx, guint JSStackFrame *fp = cx->fp; int i, j; jsval tmp; + guint stacksize; - g_assert ((guint) (fp->sp - fp->spbase) >= n_args + 2); + stacksize = fp->sp - fp->spbase; + g_assert (stacksize >= 2); + if (n_args + 2 > stacksize) { + SWFDEC_WARNING ("broken script. Want %u arguments, only got %u", n_args, stacksize - 2); + n_args = stacksize - 2; + if (!swfdec_script_ensure_stac...
2007 Apr 03
0
11 commits - libswfdec-gtk/swfdec_gtk_loader.c libswfdec-gtk/swfdec_playback_alsa.c libswfdec-gtk/swfdec_source.c libswfdec/swfdec_cached.c libswfdec/swfdec_font.c libswfdec/swfdec_morphshape.c libswfdec/swfdec_net_stream.c libswfdec/swfdec_script.c
...here diff --git a/libswfdec/swfdec_script.c b/libswfdec/swfdec_script.c index 21c1fff..d8ce1ad 100644 --- a/libswfdec/swfdec_script.c +++ b/libswfdec/swfdec_script.c @@ -3022,6 +3022,10 @@ no_catch: /* Reset sp before freeing stack slots, because our caller may GC soon. */ fp->sp = fp->spbase; fp->spbase = NULL; + if (fp->constant_pool) { + swfdec_constant_pool_free (fp->constant_pool); + fp->constant_pool = NULL; + } js_FreeRawStack(cx, mark); cx->interpLevel--; swfdec_script_unref (script); @@ -3123,8 +3127,6 @@ swfdec_script_execute (SwfdecScript *s...
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
...tatic JSBool +swfdec_action_init_object (JSContext *cx, guint action, const guint8 *data, guint len) +{ + JSStackFrame *fp = cx->fp; + JSObject *object; + guint i, n_args; + + if (!JS_ValueToECMAUint32 (cx, fp->sp[-1], &n_args)) + return JS_FALSE; + if ((guint) (fp->sp - fp->spbase) < 2 * n_args + 1) { + SWFDEC_ERROR ("not enough stack space"); + return JS_FALSE; + } + + object = JS_NewObject (cx, &js_ObjectClass, NULL, NULL); + if (object == NULL) + return JS_FALSE; + for (i = 0; i < n_args; i++) { + const char *s = swfdec_js_to_string (cx...
2007 Mar 29
0
Branch 'as' - 9 commits - libswfdec-gtk/swfdec_playback_alsa.c libswfdec/js 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_function.c
...h stack - * space is available, the stack is filled up with JSVAL_VOID. - * - * Returns: JS_TRUE on success or JS_FALSE on OOM - **/ -static inline JSBool -swfdec_script_ensure_stack (JSContext *cx, guint n_elements) -{ - JSStackFrame *fp = cx->fp; - guint current = (guint) (fp->sp - fp->spbase); - - if (current >= n_elements) - return JS_TRUE; - - if (n_elements > (guint) (fp->spend - fp->spbase)) { - SWFDEC_ERROR ("FIXME: implement stack expansion, we got an overflow (want %u, have %td)", - n_elements, (fp->spend - fp->spbase)); - return JS_FALSE;...
2007 Feb 01
0
Branch 'interpreter' - 9 commits - libswfdec/js libswfdec/swfdec_script.c libswfdec/swfdec_script.h player/swfdec_debug_stack.c test/trace
...*s; guint32 n_args; - JSObject *obj; + JSObject *obj, *pobj; + JSProperty *prop; jsval fun; + JSAtom *atom; s = swfdec_js_to_string (cx, fp->sp[-1]); if (s == NULL) @@ -561,7 +563,9 @@ swfdec_action_call_function (JSContext * if (n_args + 2 > (guint) (fp->sp - fp->spbase)) return JS_FALSE; - obj = OBJ_THIS_OBJECT (cx, cx->fp->scopeChain); + if (!(atom = js_Atomize (cx, s, strlen (s), 0)) || + !js_FindProperty (cx, (jsid) atom, &obj, &pobj, &prop)) + return JS_FALSE; if (!JS_GetProperty (cx, obj, s, &fun)) return JS_F...
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
...*s; guint32 n_args; - JSObject *obj; + JSObject *obj, *pobj; + JSProperty *prop; jsval fun; + JSAtom *atom; s = swfdec_js_to_string (cx, fp->sp[-1]); if (s == NULL) @@ -561,7 +563,9 @@ swfdec_action_call_function (JSContext * if (n_args + 2 > (guint) (fp->sp - fp->spbase)) return JS_FALSE; - obj = OBJ_THIS_OBJECT (cx, cx->fp->scopeChain); + if (!(atom = js_Atomize (cx, s, strlen (s), 0)) || + !js_FindProperty (cx, (jsid) atom, &obj, &pobj, &prop)) + return JS_FALSE; if (!JS_GetProperty (cx, obj, s, &fun)) return JS_F...
2007 Mar 05
0
5 commits - libswfdec/swfdec_js.h libswfdec/swfdec_js_movie.c libswfdec/swfdec_script.c test/trace
...gs; + JSObject *object; + jsval constructor; + const JSClass *clasp; + + s = swfdec_js_to_string (cx, fp->sp[-1]); + if (s == NULL) + return JS_FALSE; + if (!JS_ValueToECMAUint32 (cx, fp->sp[-3], &n_args)) + return JS_FALSE; + if (n_args + 3 > (guint) (fp->sp - fp->spbase)) + return JS_FALSE; + + if (!JS_ValueToObject (cx, fp->sp[-2], &object)) + return JS_FALSE; + if (object == NULL) + goto fail; + if (s[0] == '\0') { + constructor = OBJECT_TO_JSVAL (object); + } else { + if (!JS_GetProperty (cx, object, s, &constructor)) +...
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
...nd pushes the return value on top. + * + * Returns: JS_TRUE on success, JS_FALSE on failure. + **/ +static void +swfdec_action_call (SwfdecAsContext *cx, guint n_args, guint flags) +{ + JSStackFrame *fp = cx->fp; + int i, j; + jsval tmp; + guint stacksize; + + stacksize = fp->sp - fp->spbase; + g_assert (stacksize >= 2); + if (n_args + 2 > stacksize) { + SWFDEC_WARNING ("broken script. Want %u arguments, only got %u", n_args, stacksize - 2); + n_args = stacksize - 2; + if (!swfdec_script_ensure_stack (cx, n_args + 2)) + return JS_FALSE; + } + + j = -1;...
2007 Feb 19
0
22 commits - libswfdec/js libswfdec/swfdec_debugger.c libswfdec/swfdec_js.c libswfdec/swfdec_js_global.c libswfdec/swfdec_js_movie.c libswfdec/swfdec_movie.c libswfdec/swfdec_player.c libswfdec/swfdec_player_internal.h libswfdec/swfdec_script.c
...le); frame.swf = script; frame.constant_pool = NULL; @@ -2606,7 +2606,6 @@ swfdec_script_execute (SwfdecScript *scr frame.sharpArray = NULL; frame.rval = JSVAL_VOID; frame.down = NULL; - frame.scopeChain = NULL; frame.pc = NULL; frame.sp = oldfp ? oldfp->sp : NULL; frame.spbase = NULL; @@ -2614,7 +2613,8 @@ swfdec_script_execute (SwfdecScript *scr frame.flags = 0; frame.dormantNext = NULL; frame.objAtomMap = NULL; - + /* no local scope here */ + frame.scopeChain = obj; /* allocate stack for variables */ frame.nvars = 4; frame.vars = js_AllocStack (cx,...
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
...ol +swfdec_action_init_array (JSContext *cx, guint action, const guint8 *data, guint len) +{ + JSStackFrame *fp = cx->fp; + JSObject *array; + int i, j; + guint n_items; + + if (!JS_ValueToECMAUint32 (cx, fp->sp[-1], &n_items)) + return JS_FALSE; + if ((guint) (fp->sp - fp->spbase) < n_items + 1) { + SWFDEC_ERROR ("not enough stack space"); + return JS_FALSE; + } + + /* items are the wrong order on the stack */ + j = - 1 - n_items; + for (i = - 2; i > j; i--, j++) { + jsval tmp = fp->sp[i]; + fp->sp[i] = fp->sp[j]; + fp->sp[j] =...
2007 Jan 18
0
Branch 'interpreter' - 4 commits - libswfdec/js libswfdec/swfdec_bits.c libswfdec/swfdec_bits.h libswfdec/swfdec_codec_screen.c libswfdec/swfdec_image.c libswfdec/swfdec_script.c libswfdec/swfdec_swf_decoder.c libswfdec/swfdec_tag.c
...sion - MINSCRIPTVERSION, MAXSCRIPTVERSION - MINSCRIPTVERSION); + version = EXTRACT_VERSION (script->version); *rval = JSVAL_VOID; fp = cx->fp; /* set up the script */ @@ -506,9 +769,13 @@ swfdec_script_interpret (SwfdecScript *s spec->name, spec->remove, fp->sp - fp->spbase); goto internal_error; } - if (fp->sp + spec->add - MAX (spec->remove, 0) > endsp) { - SWFDEC_ERROR ("FIXME: implement stack expansion, we got an overflow"); - goto internal_error; + if (spec->add < 0) { + action = endsp - fp->sp; +...
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
...p; + const char *s; + guint32 n_args; + JSObject *obj; + jsval fun; + + s = swfdec_js_to_string (cx, fp->sp[-1]); + if (s == NULL) + return JS_FALSE; + if (!JS_ValueToECMAUint32 (cx, fp->sp[-2], &n_args)) + return JS_FALSE; + if (n_args + 2 > (guint) (fp->sp - fp->spbase)) + return JS_FALSE; + + obj = OBJ_THIS_OBJECT (cx, cx->fp->scopeChain); + if (!JS_GetProperty (cx, obj, s, &fun)) + return JS_FALSE; + fp->sp[-1] = fun; + fp->sp[-2] = OBJECT_TO_JSVAL (obj); + swfdec_action_call (cx, n_args, 0); + return JS_TRUE; +} + static JSBool...
2007 Apr 04
0
Branch 'as' - 17 commits - configure.ac doc/Makefile.am doc/swfdec-docs.sgml doc/swfdec-sections.txt doc/swfdec.types libswfdec-gtk/Makefile.am libswfdec-gtk/swfdec-gtk.h libswfdec-gtk/swfdec_gtk_loader.c libswfdec-gtk/swfdec_gtk_loader.h
...here diff --git a/libswfdec/swfdec_script.c b/libswfdec/swfdec_script.c index 21c1fff..d8ce1ad 100644 --- a/libswfdec/swfdec_script.c +++ b/libswfdec/swfdec_script.c @@ -3022,6 +3022,10 @@ no_catch: /* Reset sp before freeing stack slots, because our caller may GC soon. */ fp->sp = fp->spbase; fp->spbase = NULL; + if (fp->constant_pool) { + swfdec_constant_pool_free (fp->constant_pool); + fp->constant_pool = NULL; + } js_FreeRawStack(cx, mark); cx->interpLevel--; swfdec_script_unref (script); @@ -3123,8 +3127,6 @@ swfdec_script_execute (SwfdecScript *s...
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
...p; + const char *s; + guint32 n_args; + JSObject *obj; + jsval fun; + + s = swfdec_js_to_string (cx, fp->sp[-1]); + if (s == NULL) + return JS_FALSE; + if (!JS_ValueToECMAUint32 (cx, fp->sp[-3], &n_args)) + return JS_FALSE; + if (n_args + 3 > (guint) (fp->sp - fp->spbase)) + return JS_FALSE; + + if (!JSVAL_IS_OBJECT (fp->sp[-2])) + goto fail; + obj = JSVAL_TO_OBJECT (fp->sp[-2]); + if (s[0] == '\0') { + fun = OBJECT_TO_JSVAL (obj); + } else { + if (!JS_GetProperty (cx, obj, s, &fun)) + return JS_FALSE; + } + fp->sp--; +...
2007 Mar 12
0
11 commits - libswfdec/js libswfdec/swfdec_loader.c libswfdec/swfdec_root_sprite.c libswfdec/swfdec_script.c player/swfdebug.c player/swfdec_player_manager.c test/trace
...NULL; SwfdecBuffer *buffer = swfdec_buffer_new_subbuffer (script->buffer, cx->fp->pc + 3 + len - script->buffer->data, size); swfdec_bits_init (&bits, buffer); + if (*function_name) { + name = function_name; + } else if (cx->fp->sp > cx->fp->spbase) { + /* This is kind of a hack that uses a feature of the Adobe compiler: + * foo = function () {} is compiled as these actions: + * Push "foo", DefineFunction, SetVariable/SetMember + * With this knowledge we can inspect the topmost stack member, since + * it...