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...