diff options
| author | Wei Mao <[email protected]> | 2017-03-21 13:01:45 -0700 |
|---|---|---|
| committer | Wei Mao <[email protected]> | 2017-03-21 13:02:08 -0700 |
| commit | f36ae05fadd28e7f355297fd5f48177d9b68fbdc (patch) | |
| tree | 60fd273cef3ff7875b8dc61094213e5e170ca32a /setup/devcon/devcon.cpp | |
| parent | e044ea456aad4c444fbce00a2d9b56b304d59884 (diff) | |
| parent | 3e230151ec6c58be8c7e65082a5f75e1652526d5 (diff) | |
Merge pull request #103 from FaraSeer/devcon_unicode
Diffstat (limited to 'setup/devcon/devcon.cpp')
| -rw-r--r-- | setup/devcon/devcon.cpp | 38 |
1 files changed, 25 insertions, 13 deletions
diff --git a/setup/devcon/devcon.cpp b/setup/devcon/devcon.cpp index 24ec7b31..b1bdbf2a 100644 --- a/setup/devcon/devcon.cpp +++ b/setup/devcon/devcon.cpp @@ -56,20 +56,18 @@ Return Value: if(locbuffer) { if(count) { - int c; - int back = 0; - // // strip any trailing "\r\n"s and replace by a single "\n" - // - while(((c = *CharPrev(locbuffer,locbuffer+count)) == TEXT('\r')) || - (c == TEXT('\n'))) { - count--; - back++; - } - if(back) { - locbuffer[count++] = TEXT('\n'); - locbuffer[count] = TEXT('\0'); + LPTSTR p, q; + for(p = q = locbuffer; *p != TEXT('\0'); p++) { + if(p != q) { + *q = *p; + } + if(*p != TEXT('\r')) { + q++; + } } + *q = TEXT('\0'); + // // now write to apropriate stream // @@ -99,7 +97,7 @@ Return Value: int c; for(c=0;c<pad;c++) { - fputs(" ",stdout); + _fputts(TEXT(" "), stdout); } } @@ -1075,7 +1073,9 @@ Return Value: // -m:<machine> - remote // -r - auto reboot // -f - force operation + // -u - unicode output // + baseName = _tcsrchr(argv[0],TEXT('\\')); if(!baseName) { baseName = argv[0]; @@ -1109,6 +1109,18 @@ Return Value: } else { flags |= DEVCON_FLAG_FORCE; } + } else if((argv[firstArg][1]==TEXT('u')) || (argv[firstArg][1]==TEXT('U'))) { + if((argv[firstArg][2]!=TEXT('\0')) ) { + // + // don't recognize this switch + // + break; + } else { +#ifdef UNICODE + _setmode(_fileno(stdout), _O_WTEXT); + _setmode(_fileno(stderr), _O_WTEXT); +#endif + } } else { // // don't recognize this switch |
