fix drag-and-drop with non-latin-1 chars in filename

svn: r2835
This commit is contained in:
Matthew Flatt 2006-04-28 13:37:27 +00:00
parent f14ecde023
commit 7c45b22d9d

View File

@ -1593,7 +1593,8 @@ void wxWnd::OnDropFiles(WPARAM wParam)
POINT dropPoint; POINT dropPoint;
WORD gwFilesDropped; WORD gwFilesDropped;
char **files, *a_file; char **files, *a_file;
int wIndex; wchar_t *w_file;
int wIndex, len;
DragQueryPoint(hFilesInfo, (LPPOINT) &dropPoint); DragQueryPoint(hFilesInfo, (LPPOINT) &dropPoint);
@ -1606,8 +1607,10 @@ void wxWnd::OnDropFiles(WPARAM wParam)
files = new char *[gwFilesDropped]; files = new char *[gwFilesDropped];
for (wIndex=0; wIndex < (int)gwFilesDropped; wIndex++) { for (wIndex=0; wIndex < (int)gwFilesDropped; wIndex++) {
DragQueryFile (hFilesInfo, wIndex, (LPSTR) wxBuffer, 1000); len = DragQueryFileW(hFilesInfo, wIndex, NULL, 0);
a_file = copystring(wxBuffer); w_file = new WXGC_ATOMIC wchar_t[len + 1];
DragQueryFileW(hFilesInfo, wIndex, w_file, len);
a_file = wxNARROW_STRING(w_file);
files[wIndex] = a_file; files[wIndex] = a_file;
} }
DragFinish (hFilesInfo); DragFinish (hFilesInfo);