Re: [PATCH v21 0/1] MR7843: cmd: Implement tab completion for command line entry.
eric pouech (@epo) commented about programs/cmd/lineedit.c:
+ } + lstrcatW(searchstr, L"*"); + TRACE("New search: [%s]\n", wine_dbgstr_w(searchstr)); + + sc.isDirSearch = IsDirectoryOperation(inputBuffer, inputBufferLength); + } + + FindNextMatchingDirectoryEntry(searchstr, &sc); + + if (sc.haveSearchResult) { + /* If this is our first time through here for this search, we need to find the insert position + * for the results. Note that this is very likely not the same location as the search position. + */ + if (!sc.insertPos) { + /* If user entered a backslash after quotes, remove the quotes. */ + if (curPos > 2 && inputBuffer[curPos-2] == L'\"' && inputBuffer[curPos-1] == L'\\') { I think quote handling is not done as it should
from what I see on native: quotes are added when generated word does contain characters that would need to be escaped (eg ' ', but didn't check all the others) need quote is an attribute of current filename (ie they are removed when the new (partial) matching file no longer needs them) ; so quotes shouldn't be part of the SEARCH_CONTEXT, but only used for display (basically: go to beg of word; if needs quotes, print quote; print (partial) word; print ending quotes (if needed) -- https://gitlab.winehq.org/wine/wine/-/merge_requests/7843#note_101937
participants (1)
-
eric pouech (@epo)