search for: js_deleteproperty

Displaying 8 results from an estimated 8 matches for "js_deleteproperty".

2007 May 29
0
Branch 'as' - 6 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_js_xml.c libswfdec/swfdec_tag.c player/swfplay.c
...guint action, const guint8 *data, guint len) { + SwfdecAsValue *val; const char *name; - cx->fp->sp -= 2; - name = swfdec_js_to_string (cx, cx->fp->sp[1]); - if (name == NULL) - return JS_FALSE; - if (!JSVAL_IS_OBJECT (cx->fp->sp[0])) - return JS_TRUE; - return JS_DeleteProperty (cx, JSVAL_TO_OBJECT (cx->fp->sp[0]), name); + name = swfdec_as_value_to_string (cx, swfdec_as_stack_pop (cx->frame->stack)); + val = swfdec_as_stack_pop (cx->frame->stack); + if (SWFDEC_AS_VALUE_IS_OBJECT (val)) + swfdec_as_object_delete_variable (SWFDEC_AS_VALUE_GET_OBJECT...
2007 Mar 01
0
7 commits - libswfdec/swfdec_connection.c libswfdec/swfdec_js_connection.c libswfdec/swfdec_js_movie.c libswfdec/swfdec_js_net_stream.c libswfdec/swfdec_js_xml.c libswfdec/swfdec_net_stream.c libswfdec/swfdec_scriptable.c libswfdec/swfdec_scriptable.h
...table *script = SWFDEC_SCRIPTABLE (movie); JSObject *jsobj; JSContext *cx; + JSBool found = JS_FALSE; if (script->jsobj == NULL) return; @@ -1161,6 +1167,10 @@ swfdec_js_movie_remove_property (SwfdecM } SWFDEC_LOG ("removing %s as property", movie->name); - JS_DeleteProperty (cx, jsobj, movie->name); + if (!JS_SetPropertyAttributes (cx, jsobj, movie->name, JSPROP_READONLY | JSPROP_PERMANENT, &found) || + found != JS_TRUE || + !JS_DeleteProperty (cx, jsobj, movie->name)) { + SWFDEC_ERROR ("could not remove property %s correctly", mov...
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
...512,7 +531,6 @@ swfdec_action_push (JSContext *cx, guint return JS_FALSE; break; } - case 4: /* register */ default: SWFDEC_ERROR ("Push: type %u not implemented", type); return JS_FALSE; @@ -1658,9 +1676,34 @@ swfdec_action_delete (JSContext *cx, gui return JS_DeleteProperty (cx, JSVAL_TO_OBJECT (cx->fp->sp[0]), name); } +static JSBool +swfdec_action_store_register (JSContext *cx, guint action, const guint8 *data, guint len) +{ + if (len != 1) { + SWFDEC_ERROR ("StoreRegister action requires a length of 1, but got %u", len); + return JS_FALSE;...
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
...name = swfdec_js_to_string (cx, cx->fp->sp[1]); + if (name == NULL) + return JS_FALSE; + if (!(atom = js_Atomize (cx, name, strlen (name), 0)) || + !js_FindProperty (cx, (jsid) atom, &obj, &pobj, &prop)) + return JS_FALSE; + if (!pobj) + return JS_TRUE; + return JS_DeleteProperty (cx, pobj, name); +} + +static JSBool swfdec_action_store_register (JSContext *cx, guint action, const guint8 *data, guint len) { if (len != 1) { @@ -2169,7 +2189,7 @@ static const SwfdecActionSpec actions[25 [0x37] = { "MVAsciiToChar", NULL }, /* version 5 */ [0x3a] = { &qu...
2007 Mar 07
0
11 commits - libswfdec/swfdec_event.c libswfdec/swfdec_event.h libswfdec/swfdec_js_movie.c libswfdec/swfdec_movie.c libswfdec/swfdec_scriptable.c libswfdec/swfdec_scriptable.h libswfdec/swfdec_script.c libswfdec/swfdec_sprite.c libswfdec/swfdec_sprite.h
...} SWFDEC_LOG ("removing %s as property", movie->name); - if (!JS_SetPropertyAttributes (cx, jsobj, movie->name, JSPROP_READONLY | JSPROP_PERMANENT, &found) || + if (!JS_SetPropertyAttributes (cx, jsobj, movie->name, 0, &found) || found != JS_TRUE || - !JS_DeleteProperty (cx, jsobj, movie->name)) { + !JS_DeleteProperty2 (cx, jsobj, movie->name, &deleted) || + deleted == JSVAL_FALSE) { SWFDEC_ERROR ("could not remove property %s correctly", movie->name); } } diff-tree c2b82521e27908e41d3f3fd354f9a73c51ee26df (from beacb0853d...
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
...(SwfdecAsContext *cx, guint action, const guint8 *data, guint len) +{ + const char *name; + + cx->fp->sp -= 2; + name = swfdec_js_to_string (cx, cx->fp->sp[1]); + if (name == NULL) + return JS_FALSE; + if (!JSVAL_IS_OBJECT (cx->fp->sp[0])) + return JS_TRUE; + return JS_DeleteProperty (cx, JSVAL_TO_OBJECT (cx->fp->sp[0]), name); +} + +static void +swfdec_action_delete2 (SwfdecAsContext *cx, guint action, const guint8 *data, guint len) +{ + const char *name; + JSObject *obj, *pobj; + JSProperty *prop; + JSAtom *atom; + + cx->fp->sp -= 1; + name = swfdec_js_to_...
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
...ent StoreRegister diff --git a/libswfdec/swfdec_as_interpret.c b/libswfdec/swfdec_as_interpret.c index 6925052..70a5920 100644 --- a/libswfdec/swfdec_as_interpret.c +++ b/libswfdec/swfdec_as_interpret.c @@ -1633,22 +1633,23 @@ swfdec_action_delete2 (SwfdecAsContext * return JS_TRUE; return JS_DeleteProperty (cx, pobj, name); } +#endif static void swfdec_action_store_register (SwfdecAsContext *cx, guint action, const guint8 *data, guint len) { if (len != 1) { SWFDEC_ERROR ("StoreRegister action requires a length of 1, but got %u", len); - return JS_FALSE; + return; }...
2007 Jan 16
0
9 commits - libswfdec/js libswfdec/Makefile.am libswfdec/swfdec_audio_stream.c libswfdec/swfdec_audio_stream.h libswfdec/swfdec_cache.c libswfdec/swfdec_cached.c libswfdec/swfdec_cached.h libswfdec/swfdec_edittext_movie.c libswfdec/swfdec_image.c
...if (jsobj == NULL) return; } else { - jsobj = SWFDEC_ROOT_MOVIE (movie->root)->player->jsobj; + jsobj = SWFDEC_ROOT_MOVIE (movie)->player->jsobj; } SWFDEC_LOG ("removing %s as property", movie->name); - state = swfdec_js_push_state (movie); JS_DeleteProperty (cx, jsobj, movie->name); - swfdec_js_pop_state (movie, state); -} - -/** - * swfdec_js_add_movie: - * @movie: a #SwfdecMovie - * - * Ensures that a JSObject for the given @movie exists. - **/ -gboolean -swfdec_js_add_movie (SwfdecMovie *movie) -{ - JSContext *cx; - GList *walk; - - g_return...