CWD / command fix

This commit is contained in:
root
2024-09-29 21:28:41 +02:00
parent 6db29a0f33
commit 4565a14d2c

View File

@ -1338,11 +1338,8 @@ int parseCommandCwd(ftpDataType *data, int socketId)
cleanDynamicStringDataType(&data->clients[socketId].login.absolutePath, 0, &data->clients[socketId].memoryTable);
setDynamicStringDataType(&data->clients[socketId].login.absolutePath, theSafePath.text, theSafePath.textLen, &data->clients[socketId].memoryTable);
if (data->clients[socketId].login.absolutePath.textLen == data->clients[socketId].login.homePath.textLen)
{
setDynamicStringDataType(&data->clients[socketId].login.ftpPath, "/", 1, &data->clients[socketId].memoryTable);
}
else if (data->clients[socketId].login.absolutePath.textLen > data->clients[socketId].login.homePath.textLen)
if (data->clients[socketId].login.absolutePath.textLen > data->clients[socketId].login.homePath.textLen)
{
char *theFtpPathPointer = data->clients[socketId].login.absolutePath.text;
theFtpPathPointer += data->clients[socketId].login.homePath.textLen;
@ -1356,6 +1353,10 @@ int parseCommandCwd(ftpDataType *data, int socketId)
setDynamicStringDataType(&data->clients[socketId].login.ftpPath, theFtpPathPointer, strlen(theFtpPathPointer), &data->clients[socketId].memoryTable);
}
}
else
{
setDynamicStringDataType(&data->clients[socketId].login.ftpPath, "/", 1, &data->clients[socketId].memoryTable);
}
// my_printf("\ndata->clients[socketId].login.absolutePath = %s", data->clients[socketId].login.absolutePath.text);
// my_printf("\ndata->clients[socketId].login.ftpPath = %s", data->clients[socketId].login.ftpPath.text);