Displaying 17 results from an estimated 17 matches for "g_try_malloc".
2007 Nov 28
0
libswfdec/swfdec_loader.c
...swfdec_loader_get_text (SwfdecLoader *loader, guint version)
/* get the text from the loader */
size = swfdec_buffer_queue_get_depth (loader->queue);
+ if (size == 0) {
+ SWFDEC_LOG ("empty loader, returning empty string");
+ return g_strdup ("");
+ }
raw = g_try_malloc (size + 1);
if (!raw) {
SWFDEC_ERROR ("not enough memory to copy %u bytes", size);
2007 Apr 22
0
libswfdec/swfdec_swf_decoder.c
...r.c
+++ b/libswfdec/swfdec_swf_decoder.c
@@ -114,23 +114,28 @@ swfdec_swf_decoder_deflate_all (SwfdecSw
return TRUE;
}
-static void
+static gboolean
swf_inflate_init (SwfdecSwfDecoder * s)
{
SwfdecDecoder *dec = SWFDEC_DECODER (s);
z_stream *z;
int ret;
+ guint8 *data;
+ data = g_try_malloc (dec->bytes_total - 8);
+ if (data == NULL)
+ return FALSE;
+ s->uncompressed_buffer = swfdec_buffer_new_for_data (data, dec->bytes_total - 8);
z = &s->z;
z->zalloc = zalloc;
z->zfree = zfree;
ret = inflateInit (z);
SWFDEC_DEBUG ("inflateInit returned...
2008 Jan 19
0
5 commits - libswfdec/swfdec_as_object.c libswfdec/swfdec_loader.c libswfdec/swfdec_style_sheet.c libswfdec/swfdec_text_field_movie_as.c libswfdec/swfdec_text_field_movie.c test/swfdec_test_test.c
...;
- char *raw, *text;
+ char *text;
guint size, i, j;
/* get the text from the loader */
@@ -615,12 +615,6 @@ swfdec_loader_get_text (SwfdecLoader *loader, guint version)
SWFDEC_LOG ("empty loader, returning empty string");
return g_strdup ("");
}
- raw = g_try_malloc (size + 1);
- if (!raw) {
- SWFDEC_ERROR ("not enough memory to copy %u bytes", size);
- swfdec_buffer_queue_clear (loader->queue);
- return NULL;
- }
buffer = swfdec_buffer_queue_peek (loader->queue, size);
if (!buffer)
commit 02f8e37a36d647a227223cec8ff1cc997040...
2007 Sep 05
0
5 commits - libswfdec/swfdec_codec_ffmpeg.c libswfdec/swfdec_codec_video.c libswfdec/swfdec_player.c libswfdec/swfdec_video.c
...guint *width, guint *height, guint *rowstride)
{
SwfdecVideoDecoderFFMpeg *codec = (SwfdecVideoDecoderFFMpeg *) dec;
- int got_image;
+ int got_image = 0;
SwfdecBuffer *ret;
AVPicture picture;
+ guchar *tmp, *aligned;
+ /* fullfill alignment and padding requirements */
+ tmp = g_try_malloc (buffer->length + ALIGNMENT + FF_INPUT_BUFFER_PADDING_SIZE);
+ if (tmp == NULL) {
+ SWFDEC_WARNING ("Could not allocate temporary memory");
+ return NULL;
+ }
+ aligned = (guchar *) (((uintptr_t) tmp + ALIGNMENT) & ~ALIGNMENT);
+ memcpy (aligned, buffer->data, buffer-&...
2007 Mar 16
0
libswfdec/swfdec_loader.c libswfdec/swfdec_loader.h libswfdec/swfdec_loader_internal.h libswfdec/swfdec_net_stream.c libswfdec/swfdec_root_movie.c libswfdec/swfdec_xml.c
...+++ b/libswfdec/swfdec_xml.c
@@ -80,6 +80,7 @@ swfdec_xml_loader_target_parse (SwfdecLo
} else {
guint size;
g_assert (loader->eof);
+ swfdec_loader_set_data_type (loader, SWFDEC_LOADER_DATA_TEXT);
size = swfdec_buffer_queue_get_depth (loader->queue);
xml->text = g_try_malloc (size + 1);
if (xml->text) {
@@ -184,10 +185,6 @@ swfdec_xml_load (SwfdecXml *xml, const c
swfdec_xml_reset (xml);
xml->loader = swfdec_player_load (xml->player, url);
- if (xml->loader == NULL) {
- swfdec_xml_ondata (xml);
- } else {
- swfdec_loader_set_target (xml...
2007 Aug 01
0
9 commits - doc/swfdec-sections.txt libswfdec/swfdec_as_frame.c libswfdec/swfdec_loader.c libswfdec/swfdec_loader.h libswfdec/swfdec_loader_internal.h libswfdec/swfdec_loadertarget.c libswfdec/swfdec_loadertarget.h libswfdec/swfdec_movie.c
...SWFDEC_LOADER_STATE_ERROR) {
- /* nothing to do here */
- } else {
- guint size;
- g_assert (loader->state == SWFDEC_LOADER_STATE_EOF);
- swfdec_loader_set_data_type (loader, SWFDEC_LOADER_DATA_TEXT);
- size = swfdec_buffer_queue_get_depth (loader->queue);
- xml->text = g_try_malloc (size + 1);
- if (xml->text) {
- SwfdecBuffer *buffer;
- guint i = 0;
- while ((buffer = swfdec_buffer_queue_pull_buffer (loader->queue))) {
- memcpy (xml->text + i, buffer->data, buffer->length);
- i += buffer->length;
- swfdec_buffer_unref (buffer);
- }
-...
2008 Apr 16
8
[Bug 15528] New: jpeg decoder allocation size overflows
http://bugs.freedesktop.org/show_bug.cgi?id=15528
Summary: jpeg decoder allocation size overflows
Product: swfdec
Version: git
Platform: x86 (IA32)
OS/Version: Linux (All)
Status: NEW
Severity: normal
Priority: medium
Component: library
AssignedTo: swfdec at lists.freedesktop.org
2007 Aug 18
0
8 commits - libswfdec/Makefile.am libswfdec/swfdec_as_strings.c libswfdec/swfdec_load_object_as.c libswfdec/swfdec_load_object_as.h libswfdec/swfdec_load_object.c libswfdec/swfdec_load_object.h libswfdec/swfdec_player.c libswfdec/swfdec_player_internal.h
...id
+swfdec_load_object_loader_target_eof (SwfdecLoaderTarget *target, SwfdecLoader *loader)
+{
+ SwfdecLoadObject *load_object = SWFDEC_LOAD_OBJECT (target);
+ guint size;
+
+ /* get the text from the loader */
+ size = swfdec_buffer_queue_get_depth (loader->queue);
+ load_object->text = g_try_malloc (size + 1);
+ if (load_object->text) {
+ SwfdecBuffer *buffer;
+ guint i = 0;
+ while ((buffer = swfdec_buffer_queue_pull_buffer (loader->queue))) {
+ memcpy (load_object->text + i, buffer->data, buffer->length);
+ i += buffer->length;
+ swfdec_buffer_unre...
2007 Nov 10
1
3 commits - libswfdec/swfdec_image.c libswfdec/swfdec_image.h
...image_create_surface_transformed (SwfdecImage *image, const SwfdecColorTr
if (swfdec_color_transform_is_identity (trans))
return swfdec_image_create_surface (image);
- if (!swfdec_image_ensure_loaded (image))
- return NULL;
-
+ source = swfdec_image_create_surface (image);
tdata = g_try_malloc (image->width * image->height * 4);
if (!tdata) {
SWFDEC_ERROR ("failed to allocate memory for transformed image");
return NULL;
}
- sdata = image->data;
+ /* FIXME: This code assumes a rowstride of 4 * width */
+ sdata = cairo_image_surface_get_data (source);...
2007 Mar 01
0
11 commits - libswfdec/Makefile.am libswfdec/swfdec_connection.c libswfdec/swfdec_connection.h libswfdec/swfdec_flv_decoder.c libswfdec/swfdec_js.c libswfdec/swfdec_js_connection.c libswfdec/swfdec_js.h libswfdec/swfdec_js_net_stream.c
...!loader->eof && !loader->error))
+ return;
+
+ /* get the text from the loader */
+ if (loader->error) {
+ /* nothing to do here */
+ } else {
+ guint size;
+ g_assert (loader->eof);
+ size = swfdec_buffer_queue_get_depth (loader->queue);
+ xml->text = g_try_malloc (size + 1);
+ if (xml->text) {
+ SwfdecBuffer *buffer;
+ guint i = 0;
+ while ((buffer = swfdec_buffer_queue_pull_buffer (loader->queue))) {
+ memcpy (xml->text + i, buffer->data, buffer->length);
+ i += buffer->length;
+ swfdec_buffer_unref (buffer);
+ }
+...
2007 Feb 06
0
21 commits - configure.ac libswfdec/swfdec_audio_event.c libswfdec/swfdec_bits.c libswfdec/swfdec_button_movie.c libswfdec/swfdec_color.c libswfdec/swfdec_color.h libswfdec/swfdec_compiler.c libswfdec/swfdec_edittext.c libswfdec/swfdec_image.c
...+ cairo_surface_t *surface;
+ guint8 *tdata;
+ const guint8 *sdata;
+ guint i, n;
+ gboolean has_alpha = FALSE;
+
+ g_return_val_if_fail (SWFDEC_IS_IMAGE (image), NULL);
+ g_return_val_if_fail (trans != NULL, NULL);
+
+ if (!swfdec_image_ensure_loaded (image))
+ return NULL;
+
+ tdata = g_try_malloc (image->width * image->height * 4);
+ if (!tdata) {
+ SWFDEC_ERROR ("failed to allocate memory for transformed image");
+ return NULL;
+ }
+ sdata = image->data;
+ n = image->width * image->height;
+ for (i = 0; i < n; i++) {
+ ((guint32 *) tdata)[i] = swfd...
2007 Feb 06
0
Branch 'interpreter' - 8 commits - libswfdec/swfdec_bits.c libswfdec/swfdec_color.c libswfdec/swfdec_color.h libswfdec/swfdec_edittext.c libswfdec/swfdec_image.c libswfdec/swfdec_image.h libswfdec/swfdec_pattern.c libswfdec/swfdec_sprite.c test/dump.c
...+ cairo_surface_t *surface;
+ guint8 *tdata;
+ const guint8 *sdata;
+ guint i, n;
+ gboolean has_alpha = FALSE;
+
+ g_return_val_if_fail (SWFDEC_IS_IMAGE (image), NULL);
+ g_return_val_if_fail (trans != NULL, NULL);
+
+ if (!swfdec_image_ensure_loaded (image))
+ return NULL;
+
+ tdata = g_try_malloc (image->width * image->height * 4);
+ if (!tdata) {
+ SWFDEC_ERROR ("failed to allocate memory for transformed image");
+ return NULL;
+ }
+ sdata = image->data;
+ n = image->width * image->height;
+ for (i = 0; i < n; i++) {
+ ((guint32 *) tdata)[i] = swfd...
2007 Nov 26
0
14 commits - libswfdec/swfdec_as_object.c libswfdec/swfdec_file_reference.c libswfdec/swfdec_load_object.c libswfdec/swfdec_sprite_movie_as.c libswfdec/swfdec_system_security.c test/trace
...2, {0xFF, 0xFE, 0, 0} },
@@ -116,6 +114,7 @@ swfdec_load_object_loader_target_eof (SwfdecLoaderTarget *target,
guint size;
/* get the text from the loader */
+ // TODO: Get rid of extra alloc when getting UTF-8 with bom
size = swfdec_buffer_queue_get_depth (loader->queue);
text = g_try_malloc (size + 1);
if (text) {
@@ -142,11 +141,12 @@ swfdec_load_object_loader_target_eof (SwfdecLoaderTarget *target,
}
if (!strcmp (boms[i].name, "UTF-8")) {
- if (!g_utf8_validate (text + boms[i].length, -1, NULL)) {
+ if (!g_utf8_validate (text + boms[i].length, size...
2007 Aug 20
0
Branch 'vivi' - 60 commits - libswfdec-gtk/swfdec_gtk_loader.c libswfdec/Makefile.am libswfdec/swfdec_as_array.c libswfdec/swfdec_as_context.c libswfdec/swfdec_as_frame.c libswfdec/swfdec_as_frame_internal.h libswfdec/swfdec_as_interpret.c
...id
+swfdec_load_object_loader_target_eof (SwfdecLoaderTarget *target, SwfdecLoader *loader)
+{
+ SwfdecLoadObject *load_object = SWFDEC_LOAD_OBJECT (target);
+ guint size;
+
+ /* get the text from the loader */
+ size = swfdec_buffer_queue_get_depth (loader->queue);
+ load_object->text = g_try_malloc (size + 1);
+ if (load_object->text) {
+ SwfdecBuffer *buffer;
+ guint i = 0;
+ while ((buffer = swfdec_buffer_queue_pull_buffer (loader->queue))) {
+ memcpy (load_object->text + i, buffer->data, buffer->length);
+ i += buffer->length;
+ swfdec_buffer_unre...
2007 Nov 27
0
12 commits - libswfdec/swfdec_as_interpret.c libswfdec/swfdec_as_strings.c libswfdec/swfdec_loader.c libswfdec/swfdec_loader_internal.h libswfdec/swfdec_load_object_as.c libswfdec/swfdec_load_object.c libswfdec/swfdec_load_object.h
...t,
SwfdecLoader *loader)
{
SwfdecLoadObject *load_object = SWFDEC_LOAD_OBJECT (target);
char *text;
- guint size;
-
- /* get the text from the loader */
- // TODO: Get rid of extra alloc when getting UTF-8 with bom
- size = swfdec_buffer_queue_get_depth (loader->queue);
- text = g_try_malloc (size + 1);
- if (text) {
- SwfdecBuffer *buffer;
- guint i = 0, j;
- while ((buffer = swfdec_buffer_queue_pull_buffer (loader->queue))) {
- memcpy (text + i, buffer->data, buffer->length);
- i += buffer->length;
- swfdec_buffer_unref (buffer);
- }
- g_ass...
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
...c_bits_get_u32 (&bits);
+ if (dec->bytes_total <= 8) {
+ SWFDEC_ERROR ("Joke? Flash files need to be bigger than %u bytes", dec->bytes_total);
+ dec->bytes_total = 0;
+ return SWFDEC_STATUS_ERROR;
+ }
+ rest = swfdec_bits_get_buffer (&bits, -1);
data = g_try_malloc (dec->bytes_total);
if (data == NULL)
return SWFDEC_STATUS_ERROR;
- s->buffer = swfdec_buffer_new_for_data (data, dec->bytes_total);
+ buffer = swfdec_buffer_new_for_data (data, dec->bytes_total);
+ memcpy (buffer->data, s->buffer->data, 8);
+ swfdec_buffer_unref (s...
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
...ecLoader *loader)
{
SwfdecPolicyLoader *policy_loader = SWFDEC_POLICY_LOADER (target);
- char *text, *xml;
- guint size;
-
- /* get the text from the loader */
- // TODO: Get rid of extra alloc when getting UTF-8 with bom
- size = swfdec_buffer_queue_get_depth (loader->queue);
- text = g_try_malloc (size + 1);
- if (text) {
- SwfdecBuffer *buffer;
- guint i = 0, j;
- while ((buffer = swfdec_buffer_queue_pull_buffer (loader->queue))) {
- memcpy (text + i, buffer->data, buffer->length);
- i += buffer->length;
- swfdec_buffer_unref (buffer);
- }
- g_ass...