comparison libass/ass_render.c @ 22913:07ecf1d8922e

Fix lost hard linebreaks in libass by repeating the loop when both soft and hard linebreaks are about to be added. Original message: http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2007-April/050876.html Patch by Jindrich Makovicka /makovick gmail com/
author eugeni
date Sat, 07 Apr 2007 13:32:51 +0000
parents 71b3e04d0555
children 45c2d7b8c499
comparison
equal deleted inserted replaced
22912:20c5536265da 22913:07ecf1d8922e
1383 text_info.n_lines ++; 1383 text_info.n_lines ++;
1384 } 1384 }
1385 1385
1386 if (cur->symbol == ' ') 1386 if (cur->symbol == ' ')
1387 last_space = i; 1387 last_space = i;
1388
1389 // make sure the hard linebreak is not forgotten when
1390 // there was a new soft linebreak just inserted
1391 if (cur->symbol == '\n' && break_type == 1)
1392 i--;
1388 } 1393 }
1389 #define DIFF(x,y) (((x) < (y)) ? (y - x) : (x - y)) 1394 #define DIFF(x,y) (((x) < (y)) ? (y - x) : (x - y))
1390 exit = 0; 1395 exit = 0;
1391 while (!exit) { 1396 while (!exit) {
1392 exit = 1; 1397 exit = 1;