Fossil SCM

Convert the return value of getcwd() from MBCS into UTF8 before using it.

drh 2011-05-20 14:17 trunk
Commit ef04076777f27acf29ab2cdf51f7bb8163c33544
1 file changed +4 -1
+4 -1
--- src/file.c
+++ src/file.c
@@ -401,15 +401,18 @@
401401
){
402402
blob_set(pOut, zOrigName);
403403
blob_materialize(pOut);
404404
}else{
405405
char zPwd[2000];
406
+ char *zPwdUtf8;
406407
if( getcwd(zPwd, sizeof(zPwd)-20)==0 ){
407408
fossil_fatal("pwd too big: max %d\n", (int)sizeof(zPwd)-20);
408409
}
409410
blob_zero(pOut);
410
- blob_appendf(pOut, "%//%/", zPwd, zOrigName);
411
+ zPwdUtf8 = fossil_mbcs_to_utf8(zPwd);
412
+ blob_appendf(pOut, "%//%/", zPwdUtf8, zOrigName);
413
+ fossil_mbcs_free(zPwdUtf8);
411414
}
412415
blob_resize(pOut, file_simplify_name(blob_buffer(pOut), blob_size(pOut)));
413416
}
414417
415418
/*
416419
--- src/file.c
+++ src/file.c
@@ -401,15 +401,18 @@
401 ){
402 blob_set(pOut, zOrigName);
403 blob_materialize(pOut);
404 }else{
405 char zPwd[2000];
 
406 if( getcwd(zPwd, sizeof(zPwd)-20)==0 ){
407 fossil_fatal("pwd too big: max %d\n", (int)sizeof(zPwd)-20);
408 }
409 blob_zero(pOut);
410 blob_appendf(pOut, "%//%/", zPwd, zOrigName);
 
 
411 }
412 blob_resize(pOut, file_simplify_name(blob_buffer(pOut), blob_size(pOut)));
413 }
414
415 /*
416
--- src/file.c
+++ src/file.c
@@ -401,15 +401,18 @@
401 ){
402 blob_set(pOut, zOrigName);
403 blob_materialize(pOut);
404 }else{
405 char zPwd[2000];
406 char *zPwdUtf8;
407 if( getcwd(zPwd, sizeof(zPwd)-20)==0 ){
408 fossil_fatal("pwd too big: max %d\n", (int)sizeof(zPwd)-20);
409 }
410 blob_zero(pOut);
411 zPwdUtf8 = fossil_mbcs_to_utf8(zPwd);
412 blob_appendf(pOut, "%//%/", zPwdUtf8, zOrigName);
413 fossil_mbcs_free(zPwdUtf8);
414 }
415 blob_resize(pOut, file_simplify_name(blob_buffer(pOut), blob_size(pOut)));
416 }
417
418 /*
419

Keyboard Shortcuts

Open search /
Next entry (timeline) j
Previous entry (timeline) k
Open focused entry Enter
Show this help ?
Toggle theme Top nav button