in reply to Re: Win32 API directory searches that return wide / unicode filenames
in thread Win32 API directory searches that return wide / unicode filenames
Ideally, perl/win32.* will be updated by someone (or by me) to support the Wide functionality.
(Some/All?) the code to support this option is still there from when the -C command line option enabled the use of the wide apis on win32.
# Win32.c:775-782 /* do the FindFirstFile call */ if (USING_WIDE()) { A2WHELPER(scanname, wbuffer, sizeof(wbuffer)); fh = FindFirstFileW(PerlDir_mapW(wbuffer), &wFindData); } else { fh = FindFirstFileA(PerlDir_mapA(scanname), &aFindData); } # Win32.c:858-870 if (USING_WIDE()) { res = FindNextFileW(dirp->handle, &wFindData); if (res) { W2AHELPER(wFindData.cFileName, buffer, sizeof(buffer)); ptr = buffer; } } else { res = FindNextFileA(dirp->handle, &aFindData); if (res) ptr = aFindData.cFileName; }
All that is needed is the addition of code to enable this at runtime in perl.c/S_parse_body() where it presumably used to live. I can't see any signs of it there now.
Of course, it might be much harder to persuade the powers that be to allocate a new switch letter for the purpose. Maybe additional values could be added to the new interpretation of the -C switch (See perlrun).
Say 'W'/128 for Wide calls. Ie. perl -CW script.pl would do what -C used to do?
|
---|
Replies are listed 'Best First'. | |
---|---|
Re^3: Win32 API directory searches that return wide / unicode filenames
by Anonymous Monk on Mar 04, 2006 at 19:26 UTC | |
by BrowserUk (Patriarch) on Mar 04, 2006 at 19:48 UTC |