summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOleg Oshmyan <chortos@inbox.lv>2017-02-04 01:53:43 +0200
committerOleg Oshmyan <chortos@inbox.lv>2017-02-14 19:43:37 +0200
commit92c359721218bbdd2949ea29e13b1cf655f88920 (patch)
tree104c9f72f3b89fac1dc8472a08ce08e3cd1f2536
parent658ba4dac028e1f066da48b1476893ad05af6916 (diff)
downloadlibass-92c359721218bbdd2949ea29e13b1cf655f88920.tar.bz2
libass-92c359721218bbdd2949ea29e13b1cf655f88920.tar.xz
ass_lazy_track_init: handle negative PlayResX/PlayResY
Like VSFilter, treat negative values the same as missing values.
-rw-r--r--libass/ass.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/libass/ass.c b/libass/ass.c
index 93376d2..d99498e 100644
--- a/libass/ass.c
+++ b/libass/ass.c
@@ -1343,27 +1343,27 @@ ASS_Track *ass_new_track(ASS_Library *library)
*/
void ass_lazy_track_init(ASS_Library *lib, ASS_Track *track)
{
- if (track->PlayResX && track->PlayResY)
+ if (track->PlayResX > 0 && track->PlayResY > 0)
return;
- if (!track->PlayResX && !track->PlayResY) {
+ if (track->PlayResX <= 0 && track->PlayResY <= 0) {
ass_msg(lib, MSGL_WARN,
"Neither PlayResX nor PlayResY defined. Assuming 384x288");
track->PlayResX = 384;
track->PlayResY = 288;
} else {
- if (!track->PlayResY && track->PlayResX == 1280) {
+ if (track->PlayResY <= 0 && track->PlayResX == 1280) {
track->PlayResY = 1024;
ass_msg(lib, MSGL_WARN,
"PlayResY undefined, setting to %d", track->PlayResY);
- } else if (!track->PlayResY) {
+ } else if (track->PlayResY <= 0) {
track->PlayResY = track->PlayResX * 3 / 4;
ass_msg(lib, MSGL_WARN,
"PlayResY undefined, setting to %d", track->PlayResY);
- } else if (!track->PlayResX && track->PlayResY == 1024) {
+ } else if (track->PlayResX <= 0 && track->PlayResY == 1024) {
track->PlayResX = 1280;
ass_msg(lib, MSGL_WARN,
"PlayResX undefined, setting to %d", track->PlayResX);
- } else if (!track->PlayResX) {
+ } else if (track->PlayResX <= 0) {
track->PlayResX = track->PlayResY * 4 / 3;
ass_msg(lib, MSGL_WARN,
"PlayResX undefined, setting to %d", track->PlayResX);