Merge pull request #191 from kblinova/master

Detect Window's style slashes in mg_upload file names
This commit is contained in:
Sergey Lyubka 2013-07-01 00:47:21 -07:00
commit fa160cb9a3

View File

@ -4232,9 +4232,11 @@ int mg_upload(struct mg_connection *conn, const char *destination_dir) {
// there is no other thread can save into the same file simultaneously.
fp = NULL;
// Construct destination file name. Do not allow paths to have slashes.
if ((s = strrchr(fname, '/')) == NULL) {
s = fname;
if ((s = strrchr(fname, '/')) == NULL &&
(s = strrchr(fname, '\\')) == NULL) {
s = fname;
}
// Open file in binary mode. TODO: set an exclusive lock.
snprintf(path, sizeof(path), "%s/%s", destination_dir, s);
if ((fp = fopen(path, "wb")) == NULL) {