diff options
author | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2019-05-02 23:09:47 +0000 |
---|---|---|
committer | Akira Kakuto <kakuto@fuk.kindai.ac.jp> | 2019-05-02 23:09:47 +0000 |
commit | 255276b0f5ede7ae938255567c712e0d7de9f3da (patch) | |
tree | 6d6a676ea53be42d5c5343cd97f6594d790e09ca /Build/source/texk/dvipdfm-x/pdfximage.c | |
parent | d518626eefba2ee3d247bd7ce2c53892ee0e272c (diff) |
support file names always in default code page of OS
git-svn-id: svn://tug.org/texlive/trunk@50953 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/dvipdfm-x/pdfximage.c')
-rw-r--r-- | Build/source/texk/dvipdfm-x/pdfximage.c | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/Build/source/texk/dvipdfm-x/pdfximage.c b/Build/source/texk/dvipdfm-x/pdfximage.c index e480190f7d8..f613d5b1df0 100644 --- a/Build/source/texk/dvipdfm-x/pdfximage.c +++ b/Build/source/texk/dvipdfm-x/pdfximage.c @@ -1,6 +1,6 @@ /* This is dvipdfmx, an eXtended version of dvipdfm by Mark A. Wicks. - Copyright (C) 2007-2018 by Jin-Hwan Cho and Shunsaku Hirata, + Copyright (C) 2007-2019 by Jin-Hwan Cho and Shunsaku Hirata, the dvipdfmx project team. Copyright (C) 1998, 1999 by Mark A. Wicks <mwicks@kettering.edu> @@ -363,6 +363,10 @@ load_image (const char *ident, const char *fullname, int format, FILE *fp, #define dpx_fopen(n,m) (MFOPEN((n),(m))) #define dpx_fclose(f) (MFCLOSE((f))) +#if defined(WIN32) +int utf8name_failed = 0; +#endif /* WIN32 */ + int pdf_ximage_findresource (const char *ident, load_options options) { @@ -394,8 +398,23 @@ pdf_ximage_findresource (const char *ident, load_options options) strcpy(fullname, f); } else { /* try loading image */ +#if defined(WIN32) + utf8name_failed = 0; +#endif /* WIN32 */ fullname = dpx_find_file(ident, "_pic_", ""); +#if defined(WIN32) + if (!fullname && file_system_codepage != win32_codepage) { + int tmpcp = file_system_codepage; + utf8name_failed = 1; + file_system_codepage = win32_codepage; + fullname = dpx_find_file(ident, "_pic_", ""); + file_system_codepage = tmpcp; + } +#endif /* WIN32 */ if (!fullname) { +#if defined(WIN32) + utf8name_failed = 0; +#endif /* WIN32 */ WARN("Error locating image file \"%s\"", ident); return -1; } |