summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/luatexdir/tex/filename.c
diff options
context:
space:
mode:
Diffstat (limited to 'Build/source/texk/web2c/luatexdir/tex/filename.c')
-rw-r--r--Build/source/texk/web2c/luatexdir/tex/filename.c24
1 files changed, 21 insertions, 3 deletions
diff --git a/Build/source/texk/web2c/luatexdir/tex/filename.c b/Build/source/texk/web2c/luatexdir/tex/filename.c
index dccf982d899..baf13da133d 100644
--- a/Build/source/texk/web2c/luatexdir/tex/filename.c
+++ b/Build/source/texk/web2c/luatexdir/tex/filename.c
@@ -22,8 +22,14 @@
#include "tokens.h"
#include "commands.h"
+
static const char _svn_version[] =
- "$Id: filename.c 2271 2009-04-12 23:42:21Z oneiros $ $URL: http://foundry.supelec.fr/svn/luatex/tags/beta-0.40.2/source/texk/web2c/luatexdir/tex/filename.c $";
+ "$Id: filename.c 2448 2009-06-08 07:43:50Z taco $ $URL: http://foundry.supelec.fr/svn/luatex/tags/beta-0.40.3/source/texk/web2c/luatexdir/tex/filename.c $";
+
+/* for use by |scan_file_name|, it comes from fontforge's Unicode library */
+
+extern char *utf8_idpb(char *w, unsigned int i);
+
#define wake_up_terminal() ;
#define clear_terminal() ;
@@ -159,8 +165,20 @@ void scan_file_name(void)
if ((cur_chr == ' ') && (state != token_list) && (loc > limit)
&& !quoted_filename)
break;
- if (!more_name(cur_chr))
- break;
+ if (cur_chr > 127) {
+ unsigned char *bytes;
+ unsigned char thebytes[5] = { 0 };
+ utf8_idpb((char *) thebytes, cur_chr);
+ bytes = thebytes;
+ while (*bytes) {
+ if (!more_name(*bytes))
+ break;
+ bytes++;
+ }
+ } else {
+ if (!more_name(cur_chr))
+ break;
+ }
get_x_token();
}
end_name();