diff --git a/common/dialogs/dialog_migrate_settings.cpp b/common/dialogs/dialog_migrate_settings.cpp
index 95f66d53bf..ae6abdabde 100644
--- a/common/dialogs/dialog_migrate_settings.cpp
+++ b/common/dialogs/dialog_migrate_settings.cpp
@@ -88,7 +88,10 @@ bool DIALOG_MIGRATE_SETTINGS::TransferDataFromWindow()
if( m_btnPrevVer->GetValue() )
{
m_manager->SetMigrateLibraryTables( m_cbCopyLibraryTables->GetValue() );
- m_manager->SetMigrationSource( m_cbPath->GetValue() );
+
+ // Round-trip through a wxFileName object to remove any trailing separators
+ wxFileName path( m_cbPath->GetValue(), wxEmptyString );
+ m_manager->SetMigrationSource( path.GetPath() );
}
else
{
diff --git a/common/settings/settings_manager.cpp b/common/settings/settings_manager.cpp
index 917777d856..eaf07e0422 100644
--- a/common/settings/settings_manager.cpp
+++ b/common/settings/settings_manager.cpp
@@ -18,6 +18,7 @@
* with this program. If not, see .
*/
+#include "settings/json_settings.h"
#include
#include
#include
@@ -523,6 +524,8 @@ bool SETTINGS_MANAGER::MigrateIfNeeded()
return true;
}
+ wxLogTrace( traceSettings, "Migrating from path %s", m_migration_source );
+
MIGRATION_TRAVERSER traverser( m_migration_source, path.GetFullPath(), m_migrateLibraryTables );
wxDir source_dir( m_migration_source );