diff --git a/src/protocols/rdp/guac_rdpdr/rdpdr_fs.c b/src/protocols/rdp/guac_rdpdr/rdpdr_fs.c index 74110505..8104c385 100644 --- a/src/protocols/rdp/guac_rdpdr/rdpdr_fs.c +++ b/src/protocols/rdp/guac_rdpdr/rdpdr_fs.c @@ -199,6 +199,10 @@ int guac_rdpdr_fs_open(guac_rdpdr_device* device, const char* path, } + /* Create directory first, if necessary */ + if (file_attributes & FILE_ATTRIBUTE_DIRECTORY && (flags & O_CREAT)) + mkdir(real_path, S_IRWXU); + /* Open file */ fd = open(real_path, flags, S_IRUSR | S_IWUSR); if (fd == -1)