@@ -855,7 +855,9 @@ do_ls_dir(struct sftp_conn *conn, char *path, char *strip_path, int lflag)
855
855
(lflag & LS_SI_UNITS ));
856
856
#ifdef WINDOWS
857
857
wchar_t * wtmp = utf8_to_utf16 (lname );
858
- wprintf_s (L"%ls\n" , wtmp );
858
+ WriteConsoleW (GetStdHandle (STD_OUTPUT_HANDLE ), wtmp , wcslen (wtmp ), 0 , 0 );
859
+ WriteConsoleW (GetStdHandle (STD_OUTPUT_HANDLE ), L"\n" , 1 , 0 , 0 );
860
+
859
861
free (tmp );
860
862
#else
861
863
printf ("%s\n" , lname );
@@ -865,7 +867,8 @@ do_ls_dir(struct sftp_conn *conn, char *path, char *strip_path, int lflag)
865
867
else {
866
868
#ifdef WINDOWS
867
869
wchar_t * wtmp = utf8_to_utf16 (d [n ]-> longname );
868
- wprintf_s (L"%ls\n" , wtmp );
870
+ WriteConsoleW (GetStdHandle (STD_OUTPUT_HANDLE ), wtmp , wcslen (wtmp ), 0 , 0 );
871
+ WriteConsoleW (GetStdHandle (STD_OUTPUT_HANDLE ), L"\n" , 1 , 0 , 0 );
869
872
free (wtmp );
870
873
#else
871
874
printf ("%s\n" , d [n ]-> longname );
@@ -875,7 +878,9 @@ do_ls_dir(struct sftp_conn *conn, char *path, char *strip_path, int lflag)
875
878
else {
876
879
#ifdef WINDOWS
877
880
wchar_t * wtmp = utf8_to_utf16 (fname );
878
- wprintf_s (L"%-*ls" , colspace , wtmp );
881
+ // TODO: Deal with the sizing wprintf_s(L"%-*s", colspace, wtmp);
882
+ WriteConsoleW (GetStdHandle (STD_OUTPUT_HANDLE ), wtmp , wcslen (wtmp ), 0 , 0 );
883
+ WriteConsoleW (GetStdHandle (STD_OUTPUT_HANDLE ), L" " , 1 , 0 , 0 );
879
884
free (wtmp );
880
885
#else
881
886
printf ("%-*s" , colspace , fname );
@@ -1641,7 +1646,10 @@ parse_dispatch_command(struct sftp_conn *conn, const char *cmd, char **pwd,
1641
1646
}
1642
1647
break ;
1643
1648
case I_PWD :
1644
- printf ("Remote working directory: %s\n" , * pwd );
1649
+ printf ("Remote working directory: " );
1650
+ wchar_t * wtmp = utf8_to_utf16 (* pwd );
1651
+ WriteConsoleW (GetStdHandle (STD_OUTPUT_HANDLE ), wtmp , wcslen (wtmp ), 0 , 0 );
1652
+ WriteConsoleW (GetStdHandle (STD_OUTPUT_HANDLE ), L"\n" , 1 , 0 , 0 );
1645
1653
break ;
1646
1654
case I_LPWD :
1647
1655
if (!getcwd (path_buf , sizeof (path_buf ))) {
0 commit comments