summaryrefslogtreecommitdiffstats
path: root/libass
diff options
context:
space:
mode:
authoreugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-09-04 17:52:28 +0000
committereugeni <eugeni@b3059339-0415-0410-9bf9-f77b7e298cf2>2006-09-04 17:52:28 +0000
commite5fa53f60ea287253336c2bf00e053fdd6020be8 (patch)
tree53a8db1708312ab890f77492691342502a1a95a4 /libass
parentca6161d7534c8b56847dc90195d31a9400b4fb98 (diff)
downloadlibass-e5fa53f60ea287253336c2bf00e053fdd6020be8.tar.bz2
libass-e5fa53f60ea287253336c2bf00e053fdd6020be8.tar.xz
Fix possible unallocated memory read in libass line wrapping code.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@19669 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libass')
-rw-r--r--libass/ass_render.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c
index 62a48492..0d774dd9 100644
--- a/libass/ass_render.c
+++ b/libass/ass_render.c
@@ -1349,9 +1349,9 @@ static void wrap_lines_smart(int max_text_width)
w = s2;
do { --w; } while ((w > s1) && (w->symbol == ' '));
- do { --w; } while ((w > s1) && (w->symbol != ' '));
+ while ((w > s1) && (w->symbol != ' ')) { --w; }
e1 = w;
- do { --e1; } while ((e1 > s1) && (e1->symbol == ' '));
+ while ((e1 > s1) && (e1->symbol == ' ')) { --e1; }
if (w->symbol == ' ') ++w;
l1 = ((s2-1)->bbox.xMax + (s2-1)->pos.x) - (s1->bbox.xMin + s1->pos.x);