GUACAMOLE-94: Use readdir() instead of readdir_r(). Multiple threads will not be accessing the same directory stream.
This commit is contained in:
parent
ea6b094e24
commit
dc6cae46ca
@ -595,16 +595,12 @@ const char* guac_rdp_fs_read_dir(guac_rdp_fs* fs, int file_id) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* Read next entry, stop if error */
|
||||
if (readdir_r(file->dir, &(file->__dirent), &result))
|
||||
return NULL;
|
||||
|
||||
/* If no more entries, return NULL */
|
||||
if (result == NULL)
|
||||
/* Read next entry, stop if error or no more entries */
|
||||
if ((result = readdir(file->dir)) == NULL)
|
||||
return NULL;
|
||||
|
||||
/* Return filename */
|
||||
return file->__dirent.d_name;
|
||||
return result->d_name;
|
||||
|
||||
}
|
||||
|
||||
|
@ -216,12 +216,6 @@ typedef struct guac_rdp_fs_file {
|
||||
*/
|
||||
DIR* dir;
|
||||
|
||||
/**
|
||||
* The last read dirent structure. This is used if traversing the contents
|
||||
* of a directory.
|
||||
*/
|
||||
struct dirent __dirent;
|
||||
|
||||
/**
|
||||
* The pattern the check directory contents against, if any.
|
||||
*/
|
||||
|
Loading…
Reference in New Issue
Block a user