diff options
author | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2019-05-26 04:55:48 +0000 |
---|---|---|
committer | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2019-05-26 04:55:48 +0000 |
commit | c4383680c5d2c9766477cf8faabfa021f280fc11 (patch) | |
tree | efbe92569058b681fbf67ab1a3765675a90ab360 /Build/source/texk/dvipdfm-x/dvipdfmx.c | |
parent | cfc780dee77501f8a72837c08c01719583bcdc67 (diff) |
Fix for compiler warnings. (S. Hirata)
git-svn-id: svn://tug.org/texlive/trunk@51226 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/dvipdfm-x/dvipdfmx.c')
-rw-r--r-- | Build/source/texk/dvipdfm-x/dvipdfmx.c | 29 |
1 files changed, 16 insertions, 13 deletions
diff --git a/Build/source/texk/dvipdfm-x/dvipdfmx.c b/Build/source/texk/dvipdfm-x/dvipdfmx.c index 86ab2018f4e..e6a0fc89a17 100644 --- a/Build/source/texk/dvipdfm-x/dvipdfmx.c +++ b/Build/source/texk/dvipdfm-x/dvipdfmx.c @@ -130,22 +130,25 @@ static void set_default_pdf_filename(void) { const char *dvi_base; + const char *suffix; + size_t len = 0; dvi_base = xbasename(dvi_filename); - if (dpx_conf.compat_mode == dpx_mode_mpost_mode && - strlen(dvi_base) > 4 && - FILESTRCASEEQ(".mps", dvi_base + strlen(dvi_base) - 4)) { - pdf_filename = NEW(strlen(dvi_base)+1, char); - strncpy(pdf_filename, dvi_base, strlen(dvi_base) - 4); - pdf_filename[strlen(dvi_base)-4] = '\0'; - } else if (strlen(dvi_base) > 4 && - (FILESTRCASEEQ(".dvi", dvi_base+strlen(dvi_base)-4) || - FILESTRCASEEQ(".xdv", dvi_base+strlen(dvi_base)-4))) { - pdf_filename = NEW(strlen(dvi_base)+1, char); - strncpy(pdf_filename, dvi_base, strlen(dvi_base)-4); - pdf_filename[strlen(dvi_base)-4] = '\0'; + len = strlen(dvi_base) - strlen(".dvi"); + suffix = dvi_base + len; + if (dpx_conf.compat_mode == dpx_mode_mpost_mode && len > 0 && + FILESTRCASEEQ(".mps", suffix)) { + pdf_filename = NEW(len+strlen(".pdf")+1, char); + strncpy(pdf_filename, dvi_base, len); + pdf_filename[len] = '\0'; + } else if (len > 0 && + (FILESTRCASEEQ(".dvi", suffix) || + FILESTRCASEEQ(".xdv", suffix))) { + pdf_filename = NEW(len+strlen(".pdf")+1, char); + strncpy(pdf_filename, dvi_base, len); + pdf_filename[len] = '\0'; } else { - pdf_filename = NEW(strlen(dvi_base)+5, char); + pdf_filename = NEW(strlen(dvi_base)+strlen(".pdf")+1, char); strcpy(pdf_filename, dvi_base); } |