[Swfdec-commits] 2 commits - swfdec/swfdec_filter.c swfdec/swfdec_sprite_movie.c
Benjamin Otte
company at kemper.freedesktop.org
Mon Sep 15 11:08:49 PDT 2008
swfdec/swfdec_filter.c | 15 +++++++++++++--
swfdec/swfdec_sprite_movie.c | 4 +---
2 files changed, 14 insertions(+), 5 deletions(-)
New commits:
commit 42dcd394bc0e1faa61304ad1601c013f3b9818e3
Author: Benjamin Otte <otte at gnome.org>
Date: Mon Sep 15 20:06:37 2008 +0200
filters are garbage-collected, unreffing them causes crashers
diff --git a/swfdec/swfdec_sprite_movie.c b/swfdec/swfdec_sprite_movie.c
index e78efc2..25558ad 100644
--- a/swfdec/swfdec_sprite_movie.c
+++ b/swfdec/swfdec_sprite_movie.c
@@ -346,10 +346,8 @@ swfdec_sprite_movie_perform_place (SwfdecSpriteMovie *movie, SwfdecBits *bits, g
}
out:
if (has_filter) {
- if (cur->filters) {
- g_slist_foreach (cur->filters, (GFunc) g_object_unref, NULL);
+ if (cur->filters)
g_slist_free (cur->filters);
- }
cur->filters = filters;
}
commit 618d4aaca302a0058ed43859b15027d09d345cce
Author: Benjamin Otte <otte at gnome.org>
Date: Mon Sep 15 19:59:22 2008 +0200
read out color matrix filters
diff --git a/swfdec/swfdec_filter.c b/swfdec/swfdec_filter.c
index d78154e..87bafb9 100644
--- a/swfdec/swfdec_filter.c
+++ b/swfdec/swfdec_filter.c
@@ -24,6 +24,7 @@
#include "swfdec_filter.h"
#include "swfdec_blur_filter.h"
+#include "swfdec_color_matrix_filter.h"
#include "swfdec_debug.h"
G_DEFINE_ABSTRACT_TYPE (SwfdecFilter, swfdec_filter, SWFDEC_TYPE_AS_OBJECT)
@@ -134,8 +135,18 @@ swfdec_filter_parse (SwfdecPlayer *player, SwfdecBits *bits)
}
break;
case 6:
- SWFDEC_WARNING (" color matrix");
- swfdec_bits_skip_bytes (bits, 20 * 4);
+ {
+ SwfdecColorMatrixFilter *filter;
+ guint j;
+
+ filter = g_object_new (SWFDEC_TYPE_COLOR_MATRIX_FILTER,
+ "context", player, NULL);
+ SWFDEC_LOG (" color matrix");
+ for (j = 0; j < 20; j++) {
+ filter->matrix[j] = swfdec_bits_get_float (bits);
+ }
+ filters = g_slist_prepend (filters, filter);
+ }
break;
case 7:
{
More information about the Swfdec-commits
mailing list