Displaying 14 results from an estimated 14 matches for "swfdec_action_lookup_object".
2007 Oct 14
0
4 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_sound.c test/trace
...ctions to use swfdec_player_get_movie()
One more swfdec_as_context_eval() user down
diff --git a/libswfdec/swfdec_as_interpret.c b/libswfdec/swfdec_as_interpret.c
index 59b6052..3055a7d 100644
--- a/libswfdec/swfdec_as_interpret.c
+++ b/libswfdec/swfdec_as_interpret.c
@@ -470,8 +470,14 @@ swfdec_action_lookup_object (SwfdecAsContext *cx, SwfdecAsObject *o, const char
gboolean dot_allowed = TRUE;
const char *start;
- if (path == end)
- return NULL;
+ if (path == end) {
+ if (o == NULL)
+ o = cx->frame->target;
+ if (SWFDEC_IS_MOVIE (o))
+ return o;
+ else
+ return NULL...
2007 Oct 17
0
4 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_interpret.h libswfdec/swfdec_movie.c libswfdec/swfdec_system_as.c libswfdec/swfdec_text_field_movie.c test/trace
...b/libswfdec/swfdec_as_interpret.c
index e11397f..b88f484 100644
--- a/libswfdec/swfdec_as_interpret.c
+++ b/libswfdec/swfdec_as_interpret.c
@@ -464,7 +464,7 @@ swfdec_action_get_movie_by_slash_path (SwfdecAsContext *cx, const char *path)
return o;
}
-static SwfdecAsObject *
+SwfdecAsObject *
swfdec_action_lookup_object (SwfdecAsContext *cx, SwfdecAsObject *o, const char *path, const char *end)
{
gboolean dot_allowed = TRUE;
diff --git a/libswfdec/swfdec_as_interpret.h b/libswfdec/swfdec_as_interpret.h
index 557abf4..44f1425 100644
--- a/libswfdec/swfdec_as_interpret.h
+++ b/libswfdec/swfdec_as_interpret.h
@@...
2007 Nov 08
0
libswfdec/swfdec_load_object.c libswfdec/swfdec_movie.c libswfdec/swfdec_player.c libswfdec/swfdec_player_internal.h libswfdec/swfdec_resource.c libswfdec/swfdec_resource.h
...R_onLoadError, FALSE, vals, 2);
}
+static gboolean
+swfdec_resource_create_movie (SwfdecResource *resource)
+{
+ SwfdecPlayer *player;
+ SwfdecSpriteMovie *movie;
+ int level = -1;
+
+ if (resource->movie)
+ return TRUE;
+ player = resource->player;
+ movie = (SwfdecSpriteMovie *) swfdec_action_lookup_object (SWFDEC_AS_CONTEXT (player),
+ player->roots->data, resource->target, resource->target + strlen (resource->target));
+ if (!SWFDEC_IS_SPRITE_MOVIE (movie)) {
+ level = swfdec_player_get_level (player, resource->target);
+ if (level < 0) {
+ SWFDEC_WARNING (&quo...
2007 Nov 09
0
10 commits - doc/swfdec-sections.txt libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h libswfdec/swfdec_loader.c libswfdec/swfdec_movie.c libswfdec/swfdec_movie_clip_loader.c libswfdec/swfdec_movie.h
...ecurity,
+ request->url, request->request, request->buffer);
request->func (player, loader, request->data);
}
static void
+swfdec_request_resource_perform_unload (SwfdecPlayer *player, SwfdecResourceRequest *request)
+{
+ SwfdecSpriteMovie *movie = (SwfdecSpriteMovie *) swfdec_action_lookup_object (
+ SWFDEC_AS_CONTEXT (player), player->roots->data,
+ request->target, request->target + strlen (request->target));
+ if (!SWFDEC_IS_SPRITE_MOVIE (movie)) {
+ SWFDEC_DEBUG ("no movie, not emitting signal");
+ return;
+ }
+ swfdec_sprite_movie_unload (mo...
2007 Oct 28
1
2 commits - libswfdec/swfdec_as_interpret.c test/trace
libswfdec/swfdec_as_interpret.c | 1 +
test/trace/Makefile.am | 3 +++
test/trace/crash-0.5.3-divide-by-zero.as | 5 +++++
test/trace/crash-0.5.3-divide-by-zero.swf |binary
test/trace/crash-0.5.3-divide-by-zero.swf.trace | 1 +
5 files changed, 10 insertions(+)
New commits:
commit c6d96d7d47704ca3d62c08d35874c64f7878bdf2
Author:
2007 Nov 08
0
5 commits - libswfdec/swfdec_net_stream.c libswfdec/swfdec_player.c libswfdec/swfdec_resource.c libswfdec/swfdec_resource.h player/swfdec_slow_loader.c test/trace
...ec_resource_emit_signal (SwfdecResource *resource, const char *name, gboolea
SwfdecAsValue vals[n_args + skip];
if (resource->clip_loader == NULL)
- return;
+ return NULL;
cx = SWFDEC_AS_OBJECT (resource->clip_loader)->context;
g_assert (resource->target);
movie = swfdec_action_lookup_object (cx, SWFDEC_PLAYER (cx)->roots->data,
resource->target, resource->target + strlen (resource->target));
if (!SWFDEC_IS_SPRITE_MOVIE (movie)) {
SWFDEC_FIXME ("figure out if we emit nonetheless");
- return;
+ return NULL;
}
SWFDEC_AS_VALUE_SET_STR...
2007 Dec 13
0
libswfdec-gtk/swfdec_gtk_player.c libswfdec/swfdec_as_date.c libswfdec/swfdec_audio.c libswfdec/swfdec_audio_event.c libswfdec/swfdec_button_movie.c libswfdec/swfdec_interval.c libswfdec/swfdec_key_as.c libswfdec/swfdec_mouse_as.c libswfdec/swfdec_movie.c
...ource)->player->priv->roots->data;
}
static SwfdecPlayer *
@@ -119,7 +119,7 @@ swfdec_resource_emit_signal (SwfdecResource *resource, const char *name, gboolea
return;
cx = SWFDEC_AS_OBJECT (resource->clip_loader)->context;
g_assert (resource->target);
- movie = swfdec_action_lookup_object (cx, SWFDEC_PLAYER (cx)->roots->data,
+ movie = swfdec_action_lookup_object (cx, SWFDEC_PLAYER (cx)->priv->roots->data,
resource->target, resource->target + strlen (resource->target));
if (!SWFDEC_IS_SPRITE_MOVIE (movie)) {
SWFDEC_DEBUG ("no movie, not...
2007 Nov 12
0
13 commits - libswfdec/Makefile.am libswfdec/swfdec_decoder.c libswfdec/swfdec_decoder.h libswfdec/swfdec_flv_decoder.c libswfdec/swfdec_flv_decoder.h libswfdec/swfdec_image.c libswfdec/swfdec_image_decoder.c libswfdec/swfdec_image_decoder.h
...ec_resource_emit_signal (SwfdecResource *resource, const char *name, gboolea
SwfdecAsValue vals[n_args + skip];
if (resource->clip_loader == NULL)
- return NULL;
+ return;
cx = SWFDEC_AS_OBJECT (resource->clip_loader)->context;
g_assert (resource->target);
movie = swfdec_action_lookup_object (cx, SWFDEC_PLAYER (cx)->roots->data,
resource->target, resource->target + strlen (resource->target));
if (!SWFDEC_IS_SPRITE_MOVIE (movie)) {
SWFDEC_DEBUG ("no movie, not emitting signal");
- return NULL;
+ return;
+ }
+ if (name == SWFDEC_AS_STR_onL...
2007 Nov 01
0
3 commits - libswfdec/Makefile.am libswfdec/swfdec_as_interpret.c libswfdec/swfdec_loader.c libswfdec/swfdec_loader_internal.h libswfdec/swfdec_load_object_as.c libswfdec/swfdec_load_object.c libswfdec/swfdec_net_stream.c libswfdec/swfdec_player.c
...ayer, SwfdecLoader *loader, gpointer targetp)
+{
+ SwfdecSpriteMovie *movie;
+ SwfdecResource *resource;
+ SwfdecMovie *mov;
+ int level = -1;
+ char *target = targetp;
+
+ if (loader == NULL) {
+ /* *** Security Sandbox Violation *** */
+ return;
+ }
+
+ movie = (SwfdecSpriteMovie *) swfdec_action_lookup_object (SWFDEC_AS_CONTEXT (player),
+ player->roots->data, target, target + strlen (target));
+ resource = swfdec_resource_new (loader, NULL);
+ if (!SWFDEC_IS_SPRITE_MOVIE (movie)) {
+ level = swfdec_player_get_level (player, target);
+ if (level < 0)
+ goto fail;
+ movie =...
2007 Nov 10
0
10 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_types.c libswfdec/swfdec_initialize.as libswfdec/swfdec_initialize.h libswfdec/swfdec_movie.c libswfdec/swfdec_movie_clip_loader.c libswfdec/swfdec_movie.h libswfdec/swfdec_resource.c
...nter re
static void
swfdec_resource_do_unload (SwfdecPlayer *player, const char *target, gpointer resourcep)
{
- //SwfdecResource *resource = SWFDEC_RESOURCE (resourcep);
+ SwfdecResource *resource = SWFDEC_RESOURCE (resourcep);
SwfdecSpriteMovie *movie;
movie = (SwfdecSpriteMovie *) swfdec_action_lookup_object (
@@ -488,7 +494,7 @@ swfdec_resource_do_unload (SwfdecPlayer *player, const char *target, gpointer re
SWFDEC_DEBUG ("no movie, not unloading");
return;
}
- swfdec_sprite_movie_unload (movie);
+ swfdec_resource_replace_movie (movie, resource);
}
/* NB: must be called fr...
2007 Oct 17
0
28 commits - configure.ac debian/changelog debian/control debian/copyright debian/.gitignore debian/libswfdec0.dirs debian/libswfdec0.files debian/libswfdec0.shlibs debian/libswfdec-dev.dirs debian/libswfdec-dev.files debian/rules debian/swf-player.dirs
...x;
const char *s;
- SwfdecAsObject *ret;
g_return_val_if_fail (SWFDEC_IS_PLAYER (player), NULL);
- g_return_val_if_fail (val != NULL, NULL);
+ g_return_val_if_fail (SWFDEC_IS_AS_VALUE (val), NULL);
cx = SWFDEC_AS_CONTEXT (player);
s = swfdec_as_value_to_string (cx, val);
- ret = swfdec_action_lookup_object (cx, NULL, s, s + strlen (s));
+ return swfdec_player_get_movie_from_string (player, s);
+}
+
+SwfdecMovie *
+swfdec_player_get_movie_from_string (SwfdecPlayer *player, const char *s)
+{
+ SwfdecAsObject *ret;
+
+ g_return_val_if_fail (SWFDEC_IS_PLAYER (player), NULL);
+ g_return_val_if_fail (s...
2007 Nov 07
0
36 commits - doc/swfdec-sections.txt libswfdec/Makefile.am libswfdec/swfdec_amf.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h libswfdec/swfdec_as_strings.c libswfdec/swfdec_buffer.c libswfdec/swfdec_buffer.h
...ar *name, SwfdecAsValue *args, guint n_args)
+{
+ SwfdecAsContext *cx;
+ SwfdecAsObject *movie;
+ SwfdecAsValue vals[n_args + 2];
+
+ if (resource->clip_loader == NULL)
+ return;
+ cx = SWFDEC_AS_OBJECT (resource->clip_loader)->context;
+ g_assert (resource->target);
+ movie = swfdec_action_lookup_object (cx, SWFDEC_PLAYER (cx)->roots->data,
+ resource->target, resource->target + strlen (resource->target));
+ if (!SWFDEC_IS_SPRITE_MOVIE (movie)) {
+ SWFDEC_FIXME ("figure out if we emit nonetheless");
+ return;
+ }
+
+ SWFDEC_AS_VALUE_SET_STRING (&vals[0],...
2008 Jan 21
0
70 commits - configure.ac libswfdec-gtk/Makefile.am libswfdec-gtk/swfdec-gtk.h libswfdec-gtk/swfdec_gtk_loader.c libswfdec-gtk/swfdec_gtk_player.c libswfdec-gtk/swfdec_gtk_socket.c libswfdec-gtk/swfdec_gtk_socket.h libswfdec-gtk/swfdec_playback_alsa.c
...t_not_reached ();
@@ -200,7 +195,7 @@ swfdec_resource_create_movie (SwfdecResource *resource)
if (resource->movie)
return TRUE;
- player = SWFDEC_FLASH_SECURITY (resource)->player;
+ player = SWFDEC_PLAYER (SWFDEC_AS_OBJECT (resource)->context);
movie = (SwfdecSpriteMovie *) swfdec_action_lookup_object (SWFDEC_AS_CONTEXT (player),
player->priv->roots->data, resource->target, resource->target + strlen (resource->target));
if (!SWFDEC_IS_SPRITE_MOVIE (movie)) {
@@ -217,7 +212,8 @@ swfdec_resource_create_movie (SwfdecResource *resource)
if (movie == NULL) {
movie...
2007 Nov 30
0
36 commits - libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_date.c libswfdec/swfdec_as_initialize.as libswfdec/swfdec_as_initialize.h libswfdec/swfdec_as_strings.c libswfdec/swfdec_flash_security.c
...er);
}
} else {
g_assert_not_reached ();
@@ -200,7 +201,7 @@ swfdec_resource_create_movie (SwfdecResource *resource)
if (resource->movie)
return TRUE;
- player = resource->player;
+ player = SWFDEC_FLASH_SECURITY (resource)->player;
movie = (SwfdecSpriteMovie *) swfdec_action_lookup_object (SWFDEC_AS_CONTEXT (player),
player->roots->data, resource->target, resource->target + strlen (resource->target));
if (!SWFDEC_IS_SPRITE_MOVIE (movie)) {
@@ -257,7 +258,8 @@ swfdec_resource_loader_target_parse (SwfdecLoaderTarget *target, SwfdecLoader *l
if (swfdec_buf...