aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDmitry Antipov2013-03-05 05:48:30 +0400
committerDmitry Antipov2013-03-05 05:48:30 +0400
commit3bfc46eb53ed50ec32711b5595cffc5b7b543249 (patch)
tree88866b99e4f9aa5c4e2ee9689105b6a51d80c804 /src
parente0bc0f33bd68092b5b3c083fb485a35556a5b73b (diff)
downloademacs-3bfc46eb53ed50ec32711b5595cffc5b7b543249.tar.gz
emacs-3bfc46eb53ed50ec32711b5595cffc5b7b543249.zip
* composite.c (get_composition_id, fill_gstring_header):
Use make_uninit_vector where appropriate. * font.c (Ffont_get_glyphs, build_style_table): Likewise. * xselect.c (clean_local_selection_data): Likewise.
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog7
-rw-r--r--src/composite.c4
-rw-r--r--src/font.c9
-rw-r--r--src/xselect.c2
4 files changed, 16 insertions, 6 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 08fd647074f..b511550624f 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,10 @@
12013-03-05 Dmitry Antipov <dmantipov@yandex.ru>
2
3 * composite.c (get_composition_id, fill_gstring_header):
4 Use make_uninit_vector where appropriate.
5 * font.c (Ffont_get_glyphs, build_style_table): Likewise.
6 * xselect.c (clean_local_selection_data): Likewise.
7
12013-03-04 Paul Eggert <eggert@cs.ucla.edu> 82013-03-04 Paul Eggert <eggert@cs.ucla.edu>
2 9
3 Fix misuse of ImageMagick that caused core dump (Bug#13846). 10 Fix misuse of ImageMagick that caused core dump (Bug#13846).
diff --git a/src/composite.c b/src/composite.c
index 2da98cfc36c..8b1f0171a60 100644
--- a/src/composite.c
+++ b/src/composite.c
@@ -234,7 +234,7 @@ get_composition_id (ptrdiff_t charpos, ptrdiff_t bytepos, ptrdiff_t nchars,
234 key = components; 234 key = components;
235 else if (NILP (components)) 235 else if (NILP (components))
236 { 236 {
237 key = Fmake_vector (make_number (nchars), Qnil); 237 key = make_uninit_vector (nchars);
238 if (STRINGP (string)) 238 if (STRINGP (string))
239 for (i = 0; i < nchars; i++) 239 for (i = 0; i < nchars; i++)
240 { 240 {
@@ -828,7 +828,7 @@ fill_gstring_header (Lisp_Object header, Lisp_Object start, Lisp_Object end,
828 if (len <= 8) 828 if (len <= 8)
829 header = AREF (gstring_work_headers, len - 1); 829 header = AREF (gstring_work_headers, len - 1);
830 else 830 else
831 header = Fmake_vector (make_number (len + 1), Qnil); 831 header = make_uninit_vector (len + 1);
832 } 832 }
833 833
834 ASET (header, 0, font_object); 834 ASET (header, 0, font_object);
diff --git a/src/font.c b/src/font.c
index c6707cf31a8..db7bf352c94 100644
--- a/src/font.c
+++ b/src/font.c
@@ -4705,7 +4705,7 @@ the corresponding element is nil. */)
4705 chars = aref_addr (object, XFASTINT (from)); 4705 chars = aref_addr (object, XFASTINT (from));
4706 } 4706 }
4707 4707
4708 vec = Fmake_vector (make_number (len), Qnil); 4708 vec = make_uninit_vector (len);
4709 for (i = 0; i < len; i++) 4709 for (i = 0; i < len; i++)
4710 { 4710 {
4711 Lisp_Object g; 4711 Lisp_Object g;
@@ -4715,7 +4715,10 @@ the corresponding element is nil. */)
4715 4715
4716 code = font->driver->encode_char (font, c); 4716 code = font->driver->encode_char (font, c);
4717 if (code == FONT_INVALID_CODE) 4717 if (code == FONT_INVALID_CODE)
4718 continue; 4718 {
4719 ASET (vec, i, Qnil);
4720 continue;
4721 }
4719 g = LGLYPH_NEW (); 4722 g = LGLYPH_NEW ();
4720 LGLYPH_SET_FROM (g, i); 4723 LGLYPH_SET_FROM (g, i);
4721 LGLYPH_SET_TO (g, i); 4724 LGLYPH_SET_TO (g, i);
@@ -4898,7 +4901,7 @@ build_style_table (const struct table_entry *entry, int nelement)
4898 int i, j; 4901 int i, j;
4899 Lisp_Object table, elt; 4902 Lisp_Object table, elt;
4900 4903
4901 table = Fmake_vector (make_number (nelement), Qnil); 4904 table = make_uninit_vector (nelement);
4902 for (i = 0; i < nelement; i++) 4905 for (i = 0; i < nelement; i++)
4903 { 4906 {
4904 for (j = 0; entry[i].names[j]; j++); 4907 for (j = 0; entry[i].names[j]; j++);
diff --git a/src/xselect.c b/src/xselect.c
index decea696bfd..5b90d7def22 100644
--- a/src/xselect.c
+++ b/src/xselect.c
@@ -1903,7 +1903,7 @@ clean_local_selection_data (Lisp_Object obj)
1903 Lisp_Object copy; 1903 Lisp_Object copy;
1904 if (size == 1) 1904 if (size == 1)
1905 return clean_local_selection_data (AREF (obj, 0)); 1905 return clean_local_selection_data (AREF (obj, 0));
1906 copy = Fmake_vector (make_number (size), Qnil); 1906 copy = make_uninit_vector (size);
1907 for (i = 0; i < size; i++) 1907 for (i = 0; i < size; i++)
1908 ASET (copy, i, clean_local_selection_data (AREF (obj, i))); 1908 ASET (copy, i, clean_local_selection_data (AREF (obj, i)));
1909 return copy; 1909 return copy;