Browse Source

- Fix folder renaming (would misbehave under certain conditions)

adaptive-webui-19844
Christophe Dumez 15 years ago
parent
commit
7f576ccc82
  1. 11
      src/propertieswidget.cpp
  2. 11
      src/torrentadditiondlg.h

11
src/propertieswidget.cpp

@ -409,7 +409,7 @@ QPushButton* PropertiesWidget::getButtonFromIndex(int index) { @@ -409,7 +409,7 @@ QPushButton* PropertiesWidget::getButtonFromIndex(int index) {
return url_seeds_button;
case FILES_TAB:
return files_button;
default:
default:
return main_infos_button;
}
}
@ -613,9 +613,12 @@ void PropertiesWidget::renameSelectedFile() { @@ -613,9 +613,12 @@ void PropertiesWidget::renameSelectedFile() {
// Replace path in all files
for(int i=0; i<num_files; ++i) {
QString current_name = misc::toQString(h.get_torrent_info().file_at(i).path.string());
QString new_name = current_name.replace(old_path, new_path);
qDebug("Rename %s to %s", current_name.toLocal8Bit().data(), new_name.toLocal8Bit().data());
h.rename_file(i, new_name);
if(current_name.startsWith(old_path)) {
QString new_name = current_name;
new_name.replace(0, old_path.length(), new_path);
qDebug("Rename %s to %s", current_name.toLocal8Bit().data(), new_name.toLocal8Bit().data());
h.rename_file(i, new_name);
}
}
// Rename folder in torrent files model too
PropListModel->setData(index, new_name_last);

11
src/torrentadditiondlg.h

@ -350,10 +350,13 @@ public slots: @@ -350,10 +350,13 @@ public slots:
// Replace path in all files
for(uint i=0; i<nbFiles; ++i) {
QString current_name = files_path.at(i);
QString new_name = current_name.replace(old_path, new_path);
qDebug("Rename %s to %s", current_name.toLocal8Bit().data(), new_name.toLocal8Bit().data());
// Rename in files_path
files_path.replace(i, new_name);
if(current_name.startsWith(old_path)) {
QString new_name = current_name;
new_name.replace(0, old_path.length(), new_path);
qDebug("Rename %s to %s", current_name.toLocal8Bit().data(), new_name.toLocal8Bit().data());
// Rename in files_path
files_path.replace(i, new_name);
}
}
// Rename folder in torrent files model too
PropListModel->setData(index, new_name_last);

Loading…
Cancel
Save