Displaying 20 results from an estimated 22 matches for "g_hash_table_remove".
2007 Mar 15
0
2 commits - libswfdec/swfdec_sprite.c
...644
--- a/libswfdec/swfdec_sprite.c
+++ b/libswfdec/swfdec_sprite.c
@@ -355,7 +355,7 @@ swfdec_spriteseg_place_object_2 (SwfdecS
int id = swfdec_bits_get_u16 (bits);
content->graphic = swfdec_swf_decoder_get_character (s, id);
if (!SWFDEC_IS_GRAPHIC (content->graphic)) {
- g_hash_table_remove (sprite->live_content, GUINT_TO_POINTER (content->depth));
+ g_hash_table_remove (s->parse_sprite->live_content, GUINT_TO_POINTER (content->depth));
swfdec_content_free (content);
swfdec_sprite_remove_last_action (s->parse_sprite,
s->parse_sprite-&g...
2007 Aug 21
0
Branch 'vivi' - 10 commits - libswfdec/swfdec_button_movie.c libswfdec/swfdec_movie.c libswfdec/swfdec_player.c vivified/core vivified/dock vivified/ui
...ivi_movie_list.c
index 9177121..7cca226 100644
--- a/vivified/ui/vivi_movie_list.c
+++ b/vivified/ui/vivi_movie_list.c
@@ -329,9 +329,9 @@ vivi_movie_list_remove_node (ViviMovieLi
for (walk = node->children; walk; walk = walk->next) {
vivi_movie_list_remove_node (movies, walk);
- g_hash_table_remove (movies->nodes, walk->data);
- g_signal_handlers_disconnect_by_func (walk->data, vivi_movie_list_movie_notify, movies);
}
+ g_hash_table_remove (movies->nodes, node->data);
+ g_signal_handlers_disconnect_by_func (node->data, vivi_movie_list_movie_notify, movies);
}
sta...
2007 Aug 17
0
Branch 'vivi' - 3 commits - player/Makefile.am player/swfdec_debug_movies.c player/swfdec_debug_movies.h vivified/core vivified/ui
...anged (GTK_TREE_MODEL (movies), path, &iter);
- gtk_tree_path_free (path);
-}
-
-static void
-swfdec_debug_movies_removed (SwfdecPlayer *player, SwfdecMovie *movie, SwfdecDebugMovies *movies)
-{
- GNode *node;
- GtkTreePath *path;
-
- node = g_hash_table_lookup (movies->nodes, movie);
- g_hash_table_remove (movies->nodes, movie);
- g_signal_handlers_disconnect_by_func (movie, swfdec_debug_movies_movie_notify, movies);
- path = swfdec_debug_movies_node_to_path (node);
- g_assert (g_node_n_children (node) == 0);
- g_node_destroy (node);
- gtk_tree_model_row_deleted (GTK_TREE_MODEL (movies), pat...
2007 Sep 10
0
3 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h
...e *retval)
{
- SwfdecAsVariable *var;
const char *name;
SWFDEC_AS_VALUE_SET_BOOLEAN (retval, FALSE);
@@ -1277,20 +1346,16 @@ swfdec_as_object_unwatch (SwfdecAsContex
return;
name = swfdec_as_value_to_string (cx, &argv[0]);
+ if (object->watches != NULL &&
+ g_hash_table_remove (object->watches, name)) {
- if (!(var = swfdec_as_object_hash_lookup (object, name)))
- return;
-
- if (var->watch == NULL)
- return;
+ SWFDEC_AS_VALUE_SET_BOOLEAN (retval, TRUE);
- var->watch = NULL;
- if (var->watch_data) {
- g_free (var->watch_data);
- var-...
2007 Jun 13
0
Branch 'as' - 6 commits - libswfdec/swfdec_as_array.c libswfdec/swfdec_button_movie.c libswfdec/swfdec_morph_movie.c libswfdec/swfdec_movie_asprops.c libswfdec/swfdec_movie.c libswfdec/swfdec_movie.h libswfdec/swfdec_player.c libswfdec/swfdec_sprite.c
...e SWFDEC_SPRITE_ACTION_UPDATE:
- case SWFDEC_SPRITE_ACTION_ADD:
- content = data;
- g_hash_table_insert (sprite->live_content,
- GINT_TO_POINTER (content->depth), content);
- break;
- case SWFDEC_SPRITE_ACTION_REMOVE:
- /* data is GINT_TO_POINTER (depth) */
- g_hash_table_remove (sprite->live_content, data);
- break;
- default:
- g_assert_not_reached ();
- return;
- }
-}
-
-/* NB: does not free the action data */
static void
swfdec_sprite_remove_last_action (SwfdecSprite * sprite, guint frame_id)
{
@@ -207,8 +143,6 @@ swfdec_sprite_add_action (Swfd...
2007 May 24
0
Branch 'as' - 11 commits - libswfdec/swfdec_as_array.c libswfdec/swfdec_as_context.c libswfdec/swfdec_as_function.c libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_native_function.c libswfdec/swfdec_as_number.c libswfdec/swfdec_as_object.c
...ee692a..451d5bc 100644
--- a/libswfdec/swfdec_as_object.c
+++ b/libswfdec/swfdec_as_object.c
@@ -150,6 +150,9 @@ swfdec_as_object_do_delete (SwfdecAsObje
var = g_hash_table_lookup (object->properties, variable);
g_assert (var);
swfdec_as_object_free_property (NULL, var, object);
+ if (!g_hash_table_remove (object->properties, variable)) {
+ g_assert_not_reached ();
+ }
}
typedef struct {
diff-tree 8e153b97a76a8fa425210bf62dadfcf1aa1e979a (from 9750fc7b351d4971b5027d7e7317955c2de4322a)
Author: Benjamin Otte <otte at gnome.org>
Date: Thu May 24 18:43:33 2007 +0200
add swfdec_as...
2007 Aug 07
0
5 commits - libswfdec/swfdec_as_context.c libswfdec/swfdec_keys.h libswfdec/swfdec_movie.c libswfdec/swfdec_movie.h libswfdec/swfdec_sprite_movie_as.c player/swfdebug.c player/swfdec_debug_movies.c player/swfdec_debug_movies.h test/trace
...th = gtk_tree_path_new ();
- list = player->roots;
- }
- for (;list; list = list->next) {
- if (swfdec_movie_compare_depths (list->data, movie) >= 0)
- break;
- i++;
- }
- gtk_tree_path_append_index (path, i);
+ node = g_hash_table_lookup (movies->nodes, movie);
+ g_hash_table_remove (movies->nodes, movie);
+ g_signal_handlers_disconnect_by_func (movie, swfdec_debug_movies_movie_notify, movies);
+ path = swfdec_debug_movies_node_to_path (node);
+ g_assert (g_node_n_children (node) == 0);
+ g_node_destroy (node);
gtk_tree_model_row_deleted (GTK_TREE_MODEL (movies), pat...
2007 Aug 20
0
15 commits - libswfdec/swfdec_as_context.c libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame_internal.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h libswfdec/swfdec_as_super.c libswfdec/swfdec_as_with.c
...kup (object->properties, variable);
if (var == NULL)
- return FALSE;
+ return SWFDEC_AS_DELETE_NOT_FOUND;
if (var->flags & SWFDEC_AS_VARIABLE_PERMANENT)
- return TRUE;
+ return SWFDEC_AS_DELETE_NOT_DELETED;
swfdec_as_object_free_property (NULL, var, object);
if (!g_hash_table_remove (object->properties, variable)) {
g_assert_not_reached ();
}
- return TRUE;
+ return SWFDEC_AS_DELETE_DELETED;
}
typedef struct {
@@ -647,11 +659,9 @@ swfdec_as_object_get_variable_and_flags
* Deletes the given variable if possible. If the variable is protected from
* deletio...
2007 Aug 21
0
Branch 'vivi' - 15 commits - configure.ac libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_debugger.h libswfdec/swfdec_as_object.c libswfdec/swfdec_movie.c libswfdec/swfdec_script.c libswfdec/swfdec_types.h vivified/core vivified/ui
...vie_list_removed (SwfdecPlayer *player, SwfdecMovie *movie, ViviMovieList *movies)
+static gboolean
+vivi_movie_list_removed (ViviDebugger *debugger, SwfdecAsObject *object, ViviMovieList *movies)
{
GNode *node;
GtkTreePath *path;
- node = g_hash_table_lookup (movies->nodes, movie);
- g_hash_table_remove (movies->nodes, movie);
- g_signal_handlers_disconnect_by_func (movie, vivi_movie_list_movie_notify, movies);
+ if (!SWFDEC_IS_MOVIE (object))
+ return FALSE;
+ node = g_hash_table_lookup (movies->nodes, object);
+ g_hash_table_remove (movies->nodes, object);
+ g_signal_handlers_di...
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
...e SWFDEC_SPRITE_ACTION_UPDATE:
+ case SWFDEC_SPRITE_ACTION_ADD:
+ content = data;
+ g_hash_table_insert (sprite->live_content,
+ GINT_TO_POINTER (content->depth), content);
+ break;
+ case SWFDEC_SPRITE_ACTION_REMOVE:
+ /* data is GINT_TO_POINTER (depth) */
+ g_hash_table_remove (sprite->live_content, data);
+ break;
+ default:
+ g_assert_not_reached ();
+ return;
+ }
+}
+
/* NB: does not free the action data */
static void
swfdec_sprite_remove_last_action (SwfdecSprite * sprite, unsigned int frame_id)
@@ -212,6 +208,7 @@ swfdec_sprite_add_action (...
2007 Aug 15
0
Branch 'vivi' - 13 commits - doc/swfdec-sections.txt libswfdec/swfdec_as_debugger.h libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_types.h vivified/core vivified/ui
...clude "config.h"
+#endif
+
+#include "vivi_wrap.h"
+#include "vivi_application.h"
+
+G_DEFINE_TYPE (ViviWrap, vivi_wrap, SWFDEC_TYPE_AS_OBJECT)
+
+static void
+vivi_wrap_dispose (GObject *object)
+{
+ ViviWrap *wrap = VIVI_WRAP (object);
+
+ if (wrap->wrap) {
+ g_hash_table_remove (VIVI_APPLICATION (SWFDEC_AS_OBJECT (wrap)->context)->wraps, wrap->wrap);
+ wrap->wrap = NULL;
+ }
+
+ G_OBJECT_CLASS (vivi_wrap_parent_class)->dispose (object);
+}
+
+static void
+vivi_wrap_class_init (ViviWrapClass *klass)
+{
+ GObjectClass *object_class = G_OBJECT_CLASS (kla...
2007 Apr 13
0
5 commits - libswfdec/Makefile.am libswfdec/swfdec_color.c libswfdec/swfdec_color.h libswfdec/swfdec_font.c libswfdec/swfdec_loadertarget.c libswfdec/swfdec_movie.h libswfdec/swfdec_pattern.c libswfdec/swfdec_pattern.h libswfdec/swfdec_player.c
...content->clip_depth = swfdec_bits_get_u16 (bits) - 16384;
SWFDEC_LOG (" clip_depth = %d (=> %d)", content->clip_depth + 16384, content->clip_depth);
}
+ if (has_filter) {
+ SWFDEC_ERROR ("filters aren't implemented, skipping PlaceObject tag!");
+ g_hash_table_remove (s->parse_sprite->live_content, GUINT_TO_POINTER (content->depth));
+ swfdec_content_free (content);
+ swfdec_sprite_remove_last_action (s->parse_sprite,
+ s->parse_sprite->parse_frame);
+ return SWFDEC_STATUS_OK;
+ }
+ if (has_blend_mode) {
+ guint operator =...
2007 Aug 22
0
163 commits - autogen.sh configure.ac doc/swfdec-sections.txt libswfdec-gtk/swfdec_gtk_player.c libswfdec-gtk/swfdec_gtk_player.h libswfdec-gtk/swfdec_gtk_widget.c libswfdec-gtk/swfdec_source.c libswfdec/Makefile.am libswfdec/swfdec_as_array.c
...ivi_movie_list.c
index 9177121..7cca226 100644
--- a/vivified/ui/vivi_movie_list.c
+++ b/vivified/ui/vivi_movie_list.c
@@ -329,9 +329,9 @@ vivi_movie_list_remove_node (ViviMovieLi
for (walk = node->children; walk; walk = walk->next) {
vivi_movie_list_remove_node (movies, walk);
- g_hash_table_remove (movies->nodes, walk->data);
- g_signal_handlers_disconnect_by_func (walk->data, vivi_movie_list_movie_notify, movies);
}
+ g_hash_table_remove (movies->nodes, node->data);
+ g_signal_handlers_disconnect_by_func (node->data, vivi_movie_list_movie_notify, movies);
}
sta...
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
...));
+ priv = player->priv;
if (object) {
SWFDEC_LOG ("setting class %p for %s", object, name);
- g_hash_table_insert (player->registered_classes, (gpointer) name, object);
+ g_hash_table_insert (priv->registered_classes, (gpointer) name, object);
} else {
- g_hash_table_remove (player->registered_classes, name);
+ g_hash_table_remove (priv->registered_classes, name);
}
}
@@ -2025,24 +2083,28 @@ swfdec_player_set_export_class (SwfdecPlayer *player, const char *name, SwfdecAs
void
swfdec_player_root_object (SwfdecPlayer *player, GObject *object)
{
+ Swfd...
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
...ert;
+
+ g_return_if_fail (SWFDEC_IS_PLAYER (player));
+ g_return_if_fail (name != NULL);
+ g_return_if_fail (JSVAL_IS_OBJECT (val));
+
+ insert = g_hash_table_lookup (player->registered_classes, name);
+ if (insert) {
+ JS_RemoveRoot (player->jscx, insert);
+ g_free (insert);
+ g_hash_table_remove (player->registered_classes, name);
+ }
+
+ if (val != JSVAL_NULL) {
+ insert = g_new (jsval, 1);
+ *insert = val;
+ if (!JS_AddRoot (player->jscx, insert)) {
+ g_free (insert);
+ return;
+ }
+ g_hash_table_insert (player->registered_classes, g_strdup (name), ins...
2007 Oct 25
0
12 commits - libswfdec/swfdec_as_internal.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_object.c libswfdec/swfdec_text_field_movie_as.c libswfdec/swfdec_text_field_movie.c test/trace
...WFDEC_AS_STR___proto__ && object->context->version <= 6) {
- object->prototype = NULL;
- object->prototype_flags = 0;
- }
+ // Note: We won't remove object->prototype, even if __proto__ is deleted
+
swfdec_as_object_free_property (NULL, var, object);
if (!g_hash_table_remove (object->properties, variable)) {
g_assert_not_reached ();
@@ -826,8 +861,7 @@ swfdec_as_object_get_variable_and_flags (SwfdecAsObject *object,
*pobject = cur;
return TRUE;
}
- cur = swfdec_as_object_prototype_for_version (cur, cur->context->version,
- FALSE);
+...
2007 Oct 25
0
6 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_event.c libswfdec/swfdec_event.h libswfdec/swfdec_movie.c libswfdec/swfdec_movie.h libswfdec/swfdec_player.c libswfdec/swfdec_player_internal.h libswfdec/swfdec_resource.c
...%p for %p %s\n", object, name, name);
if (object) {
- SWFDEC_LOG ("setting class %p for %s\n", object, name);
+ SWFDEC_LOG ("setting class %p for %s", object, name);
g_hash_table_insert (player->registered_classes, (gpointer) name, object);
} else {
g_hash_table_remove (player->registered_classes, name);
diff --git a/libswfdec/swfdec_player_as.c b/libswfdec/swfdec_player_as.c
index 1b0bf23..5636c7a 100644
--- a/libswfdec/swfdec_player_as.c
+++ b/libswfdec/swfdec_player_as.c
@@ -277,12 +277,14 @@ swfdec_player_object_registerClass (SwfdecAsContext *cx, SwfdecAs...
2007 Jun 06
0
Branch 'as' - 13 commits - libswfdec/swfdec_as_context.c libswfdec/swfdec_as_context.h libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_object.c libswfdec/swfdec_as_object.h
...iable)
{
SwfdecAsVariable *var;
var = g_hash_table_lookup (object->properties, variable);
- g_assert (var);
+ if (var == NULL)
+ return FALSE;
+ if (var->flags & SWFDEC_AS_VARIABLE_PERMANENT)
+ return TRUE;
+
swfdec_as_object_free_property (NULL, var, object);
if (!g_hash_table_remove (object->properties, variable)) {
g_assert_not_reached ();
}
+ return TRUE;
}
typedef struct {
@@ -314,35 +319,27 @@ swfdec_as_object_set_variable (SwfdecAsO
klass->set (object, variable, value);
}
-static inline gboolean
-swfdec_as_object_lookup (SwfdecAsObject *object, co...
2007 Sep 11
0
8 commits - libswfdec/swfdec_as_function.c libswfdec/swfdec_as_initialize.as libswfdec/swfdec_as_initialize.h libswfdec/swfdec_as_object.c libswfdec/swfdec_as_strings.c test/trace
...ecAsContex
return;
name = swfdec_as_value_to_string (cx, &argv[0]);
+
+ // special case: can't unwatch native properties
+ if ((var = swfdec_as_object_hash_lookup (object, name))&& var->get != NULL)
+ return;
+
if (object->watches != NULL &&
g_hash_table_remove (object->watches, name)) {
diff-tree d258d1a93904a367069ea318719f22f17373b688 (from 3a69becf53764c298412ab797d2bb5b63d17bca3)
Author: Pekka Lampila <pekka.lampila at iki.fi>
Date: Tue Sep 11 15:23:14 2007 +0300
Add Object.prototype.toLocaleString method (just calls this.toString)...
2007 Sep 03
0
20 commits - libswfdec/Makefile.am libswfdec/swfdec_as_context.c libswfdec/swfdec_as_function.c libswfdec/swfdec_as_initialize.as libswfdec/swfdec_as_initialize.h libswfdec/swfdec_as_internal.h libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_number.c
...if (var->flags & SWFDEC_AS_VARIABLE_PERMANENT)
return SWFDEC_AS_DELETE_NOT_DELETED;
+ if (variable == SWFDEC_AS_STR___proto__ &&
+ object->context->version <= 6)
+ object->prototype = NULL;
swfdec_as_object_free_property (NULL, var, object);
if (!g_hash_table_remove (object->properties, variable)) {
g_assert_not_reached ();
diff-tree 5072de677d012350f5439d08f3d296ed349ad7dd (from 2f139f8cd0d896d44cea0d9a0d7f5c6a435dd37f)
Author: Benjamin Otte <otte at gnome.org>
Date: Mon Sep 3 12:59:35 2007 +0200
seems like there's no addProperty look...