aboutsummaryrefslogtreecommitdiffstats
path: root/src/fileio.c
diff options
context:
space:
mode:
authorStefan Monnier2004-08-07 20:57:19 +0000
committerStefan Monnier2004-08-07 20:57:19 +0000
commit0cedd530e32404ca05c7535d373fc64acd29e784 (patch)
tree77d63560e39809ca55f71dcec56210fd6f054700 /src/fileio.c
parentabaf2e77e7ba11af0daa8989b2b0a2eb136d649b (diff)
downloademacs-0cedd530e32404ca05c7535d373fc64acd29e784.tar.gz
emacs-0cedd530e32404ca05c7535d373fc64acd29e784.zip
(make_temp_name): Handle multibyte prefixes.
Diffstat (limited to 'src/fileio.c')
-rw-r--r--src/fileio.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/fileio.c b/src/fileio.c
index c417dcdf339..a05b1cb8340 100644
--- a/src/fileio.c
+++ b/src/fileio.c
@@ -886,7 +886,7 @@ make_temp_name (prefix, base64_p)
886 int base64_p; 886 int base64_p;
887{ 887{
888 Lisp_Object val; 888 Lisp_Object val;
889 int len; 889 int len, clen;
890 int pid; 890 int pid;
891 unsigned char *p, *data; 891 unsigned char *p, *data;
892 char pidbuf[20]; 892 char pidbuf[20];
@@ -921,8 +921,10 @@ make_temp_name (prefix, base64_p)
921#endif 921#endif
922 } 922 }
923 923
924 len = SCHARS (prefix); 924 len = SBYTES (prefix); clen = SCHARS (prefix);
925 val = make_uninit_string (len + 3 + pidlen); 925 val = make_uninit_multibyte_string (clen + 3 + pidlen, len + 3 + pidlen);
926 if (!STRING_MULTIBYTE (prefix))
927 STRING_SET_UNIBYTE (val);
926 data = SDATA (val); 928 data = SDATA (val);
927 bcopy(SDATA (prefix), data, len); 929 bcopy(SDATA (prefix), data, len);
928 p = data + len; 930 p = data + len;