Remove managed subdirectories in assets when deploying to Android

We need to make sure there aren't left-over subdirectories in the
assets/ folder when you have used the bundling mechanism for
deployment.

To make this easier, we fix a bug where a missing slash
would cause multiple libraryPrefix() directories with different
suffixes under assets/ instead of just a single one containing
everything managed by creator. When the slash is added we can
simply remove the whole "assets/" + libraryPrefix() directory
recursively.

Task-number: QTCREATORBUG-9294
Change-Id: Ie24b55680d247df458bc70bbc15abdce51605627
Reviewed-by: Daniel Teske <daniel.teske@digia.com>
This commit is contained in:
Eskil Abrahamsen Blomfeldt
2013-05-14 15:22:06 +02:00
parent 342d65f7a2
commit 688740cf80

View File

@@ -559,7 +559,7 @@ void AndroidPackageCreationStep::collectFiles(QList<DeployItem> *deployList,
destinationPath = androidLibPath + QLatin1Char('/') + garbledFileName;
shouldStrip = true;
} else {
garbledFileName = AndroidManager::libraryPrefix() + fullFileName;
garbledFileName = AndroidManager::libraryPrefix() + QLatin1Char('/') + fullFileName;
destinationPath = androidAssetsPath + garbledFileName;
}
@@ -591,6 +591,8 @@ void AndroidPackageCreationStep::removeManagedFilesFromPackage()
}
}
}
removeDirectory(m_androidDir.toString() + QLatin1String("/assets/") + AndroidManager::libraryPrefix());
}
void AndroidPackageCreationStep::copyFilesIntoPackage(const QList<DeployItem> &deployList)