7fce527cff
When receiving a file list, xfreerdp3 rebuilds the content of the FUSE filesystem. Since fetching uri-lists can happen during a paste action too, xfreerdp3 caches the content of the last fetched mime type. However, uri-lists exists in different variations, e.g. nautilus uses a different mime type, than gnome-terminal does. Furthermore, FormatLists can also contain other formats in addition to file lists. Fetching those contents during a paste operation leads to IO errors in the paste operation. In order to fix those errors, cache every mimetype in two hash tables: One for the raw (unconverted) data, and one for the converted data. When a content request is received, xfreerdp3 can with the already cached converted data, directly serve the data. If the content is not available as cached data, but its source data was already fetched, use that source data to create the converted data. Then serve the converted data. Only if no cached converted data or cached raw data is available, issue a new FormatDataRequest. |
||
---|---|---|
.. | ||
Android | ||
common | ||
iOS | ||
Mac | ||
Sample | ||
SDL | ||
Wayland | ||
Windows | ||
X11 | ||
.gitignore | ||
CMakeLists.txt | ||
freerdp-client.pc.in | ||
FreeRDP-ClientConfig.cmake.in |