summaryrefslogtreecommitdiff
path: root/src/hb-subset.cc
diff options
context:
space:
mode:
authorBehdad Esfahbod <behdad@behdad.org>2018-09-07 10:24:22 -0400
committerBehdad Esfahbod <behdad@behdad.org>2018-09-07 10:24:22 -0400
commit5f17dbc3025093308d2191a4abd2eec24db35c0e (patch)
treea841ceefe549bb1d263bf5e6d28b8c506bfe01e8 /src/hb-subset.cc
parent21bf147054f6b5bd1c430c0e02a8c4058ed229a1 (diff)
downloadharfbuzz-5f17dbc3025093308d2191a4abd2eec24db35c0e.tar.gz
[subset] Fix div-by-zero
Diffstat (limited to 'src/hb-subset.cc')
-rw-r--r--src/hb-subset.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/hb-subset.cc b/src/hb-subset.cc
index adc7c51d..2bed3586 100644
--- a/src/hb-subset.cc
+++ b/src/hb-subset.cc
@@ -51,6 +51,9 @@ _plan_estimate_subset_table_size (hb_subset_plan_t *plan,
unsigned int src_glyphs = plan->source->get_num_glyphs ();
unsigned int dst_glyphs = plan->glyphset->get_population ();
+ if (unlikely (!src_glyphs))
+ return 512 + table_len;
+
return 512 + (unsigned int) (table_len * sqrt ((double) dst_glyphs / src_glyphs));
}