diff options
author | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-08-15 00:35:35 +0000 |
---|---|---|
committer | arpi <arpi@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2001-08-15 00:35:35 +0000 |
commit | b15e5745af8ed9333329d0c8f6d7006f83bf02ca (patch) | |
tree | 29de6b1732d733831de680e8be16eb4864fb9937 /libvo/sub.c | |
parent | 1a1ba1d58d64c937297e7af734107139a47fe7ad (diff) | |
download | mpv-b15e5745af8ed9333329d0c8f6d7006f83bf02ca.tar.bz2 mpv-b15e5745af8ed9333329d0c8f6d7006f83bf02ca.tar.xz |
segfault fixed
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@1525 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo/sub.c')
-rw-r--r-- | libvo/sub.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libvo/sub.c b/libvo/sub.c index 6f49a9bfa0..1d07355426 100644 --- a/libvo/sub.c +++ b/libvo/sub.c @@ -137,7 +137,7 @@ inline static void vo_draw_text_sub(int dxs,int dys,void (*draw_alpha)(int x0,in memdxs=dxs; memdys=dys; - memy=dys-vo_font->height/4; + memy=dys-vo_font->height/2; // too long lines divide into smaller ones i=k=lines=0; l=vo_sub->lines; @@ -195,12 +195,14 @@ inline static void vo_draw_text_sub(int dxs,int dys,void (*draw_alpha)(int x0,in k=i=0; l=lines; while (l--){ x = xtbl[i++]; + if(y<dys) while ((c=utbl[k++])){ if (x>=0 && x+vo_font->width[c]<=dxs) if ((font=vo_font->font[c])>=0) draw_alpha(x,y, vo_font->width[c], - vo_font->pic_a[font]->h, +// vo_font->pic_a[font]->h, + (y+vo_font->pic_a[font]->h<=dys)?vo_font->pic_a[font]->h:dys-y, vo_font->pic_b[font]->bmp+vo_font->start[c], vo_font->pic_a[font]->bmp+vo_font->start[c], vo_font->pic_a[font]->w); |