Fossil

Check-in [a65c97afd6]
Login

Check-in [a65c97afd6]

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Update the fossil_system() function so that it converts the system command form UTF8 into MBCS before calling system(). Speculative fix for ticket [8d916f5fc30be3].
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | windows-i18n
Files: files | file ages | folders
SHA1: a65c97afd622bb1ac861eac745e02f8f990d37fe
User & Date: drh 2011-05-03 01:12:12.717
Context
2011-05-03
18:32
Convert filenames from UTF8 to MBCS on windows when checking if a file exists or checking its size, etc. Ticket [336924579dd95e7cceaeeae5]. ... (check-in: 48f5dadafd user: drh tags: windows-i18n)
01:12
Update the fossil_system() function so that it converts the system command form UTF8 into MBCS before calling system(). Speculative fix for ticket [8d916f5fc30be3]. ... (check-in: a65c97afd6 user: drh tags: windows-i18n)
2011-05-02
13:31
Change calls to unlink() into file_delete(). The file_delete() routine converts filenames to MBCS from UTF if necessary. ... (check-in: eea6449098 user: drh tags: windows-i18n)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/main.c.
428
429
430
431
432
433
434

435

436
437
438
439
440
441
442
int fossil_system(const char *zOrigCmd){
  int rc;
#if defined(_WIN32)
  /* On windows, we have to put double-quotes around the entire command.
  ** Who knows why - this is just the way windows works.
  */
  char *zNewCmd = mprintf("\"%s\"", zOrigCmd);

  rc = system(zNewCmd);

  free(zNewCmd);
#else
  /* On unix, evaluate the command directly.
  */
  rc = system(zOrigCmd);
#endif 
  return rc; 







>
|
>







428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
int fossil_system(const char *zOrigCmd){
  int rc;
#if defined(_WIN32)
  /* On windows, we have to put double-quotes around the entire command.
  ** Who knows why - this is just the way windows works.
  */
  char *zNewCmd = mprintf("\"%s\"", zOrigCmd);
  char *zMbcs = fossil_utf8_to_mbcs(zNewCmd);
  rc = system(zMbcs);
  fossil_mbcs_free(zMbcs);
  free(zNewCmd);
#else
  /* On unix, evaluate the command directly.
  */
  rc = system(zOrigCmd);
#endif 
  return rc;