Code:  hb_buffer_ensure_separate (hb_buffer_t *buffer, unsigned int size)
 {
  hb_buffer_ensure (buffer, size);
   if (buffer->out_info == buffer->info)
   {
     assert (buffer->have_output);
    if (!buffer->pos)
      buffer->pos = (hb_internal_glyph_position_t *) calloc (buffer->allocated, sizeof (buffer->pos[0]));
 
     buffer->out_info = (hb_internal_glyph_info_t *) buffer->pos;
     memcpy (buffer->out_info, buffer->info, buffer->out_len * sizeof (buffer->out_info[0]));
   }
 }

Vulnerability Type: DoS Exec Code
CWE ID: 
Summary: The hb_buffer_ensure function in hb-buffer.c in HarfBuzz, as used in Pango 1.28.3, Firefox, and other products, does not verify that memory reallocations succeed, which allows remote attackers to cause a denial of service (NULL pointer dereference and application crash) or possibly execute arbitrary code via crafted OpenType font data that triggers use of an incorrect index.
Commit Message: 