summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2005-07-21 19:57:01 +0000
committerOwen Taylor <otaylor@src.gnome.org>2005-07-21 19:57:01 +0000
commit4e16fb2a36e4c216901c95f4065313d3714f135e (patch)
treefde4f1454b88f723e162e1b6b41358c4618f5585
parent7d2fbac09cf2d46ff4a7c6afc9c0d4b1086977cf (diff)
downloadpango-4e16fb2a36e4c216901c95f4065313d3714f135e.tar.gz
Avoid calling memcpy with a NULL argument. (#310021, Morten Welinder)
2005-07-21 Owen Taylor <otaylor@redhat.com> * pango/pango-layout.c (pango_layout_set_text): Avoid calling memcpy with a NULL argument. (#310021, Morten Welinder)
-rw-r--r--ChangeLog5
-rw-r--r--ChangeLog.pre-1-105
-rw-r--r--pango/pango-layout.c3
3 files changed, 12 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 04419048..554d0b25 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
2005-07-21 Owen Taylor <otaylor@redhat.com>
+ * pango/pango-layout.c (pango_layout_set_text): Avoid calling
+ memcpy with a NULL argument. (#310021, Morten Welinder)
+
+2005-07-21 Owen Taylor <otaylor@redhat.com>
+
Merges of fixes from Arabic module (#308813, Emil Soleyman-Zomalan)
* modules/syriac/syriac-fc.c (syriac_engine_shape): Fix
diff --git a/ChangeLog.pre-1-10 b/ChangeLog.pre-1-10
index 04419048..554d0b25 100644
--- a/ChangeLog.pre-1-10
+++ b/ChangeLog.pre-1-10
@@ -1,5 +1,10 @@
2005-07-21 Owen Taylor <otaylor@redhat.com>
+ * pango/pango-layout.c (pango_layout_set_text): Avoid calling
+ memcpy with a NULL argument. (#310021, Morten Welinder)
+
+2005-07-21 Owen Taylor <otaylor@redhat.com>
+
Merges of fixes from Arabic module (#308813, Emil Soleyman-Zomalan)
* modules/syriac/syriac-fc.c (syriac_engine_shape): Fix
diff --git a/pango/pango-layout.c b/pango/pango-layout.c
index fd43ff9d..b34349a1 100644
--- a/pango/pango-layout.c
+++ b/pango/pango-layout.c
@@ -818,7 +818,8 @@ pango_layout_set_text (PangoLayout *layout,
/* NULL-terminate the text for convenience.
*/
layout->text = g_malloc (length + 1);
- memcpy (layout->text, text, length);
+ if (length > 0)
+ memcpy (layout->text, text, length);
layout->text[length] = '\0';
layout->n_chars = g_utf8_strlen (layout->text, -1);