cvs: /php4/ext/pdf pdf.c
| From: | Uwe Steinmann | Date: | Tue, 14 Sep 1999 14:47:13 +0000 |
| Subject: | cvs: /php4/ext/pdf pdf.c | ||
| Groups: | php.version4 | ||
| Request: | Send a blank email to php-version4+get-4432@lists.php.net to get a copy of this message | ||
steinm Tue Sep 14 10:47:13 1999 EDT
Modified files:
/php4/ext/pdf pdf.c
Log:
- fixed memory leaks in pdf_open_memory_image() and pdf_add_bookmark()
Index: php4/ext/pdf/pdf.c
diff -u php4/ext/pdf/pdf.c:1.13 php4/ext/pdf/pdf.c:1.14
--- php4/ext/pdf/pdf.c:1.13 Fri Sep 10 01:23:01 1999
+++ php4/ext/pdf/pdf.c Tue Sep 14 10:47:12 1999
@@ -27,7 +27,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: pdf.c,v 1.13 1999/09/10 05:23:01 steinm Exp $ */
+/* $Id: pdf.c,v 1.14 1999/09/14 14:47:12 steinm Exp $ */
/* pdflib 2.01 is subject to the ALADDIN FREE PUBLIC LICENSE.
Copyright (C) 1997 Thomas Merz. */
@@ -177,6 +177,7 @@
static void _free_outline(int *outline)
{
+ if(outline) efree(outline);
}
PHP_MINIT_FUNCTION(pdf)
@@ -1829,7 +1830,7 @@
}
outline=emalloc(sizeof(int));
- *outline = PDF_add_bookmark(pdf, estrdup(arg2->value.str.val), parentid, open);
+ *outline = PDF_add_bookmark(pdf, arg2->value.str.val, parentid, open);
id = php3_list_insert(outline,PDF_GLOBAL(le_outline));
RETURN_LONG(id);
}
@@ -2038,9 +2039,11 @@
#else
pdf_image = PDF_open_image(pdf, "raw", "memory", buffer,
im->sx*im->sy*3, im->sx, im->sy, 3, 8, NULL);
#endif
+ efree(buffer);
if(-1 == pdf_image) {
php3_error(E_WARNING, "Could not open image");
+ efree(buffer);
RETURN_FALSE;
}