Details
-
Bug
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
For backward compatibility and to avoid mass core plugins failures we re-use windows8 platform definitions for plugins for new windows platform.
But looks like after some recent changes in cordova-lib some of the elements are not processed correct,
I see the following logic added
/src/plugman/install.js
var platformTag = pluginInfo._et.find('./platform[@name="'+platform+'"]'); // CB-6976 Windows Universal Apps. For smooth transition and to prevent mass api failures // we allow using windows8 tag for new windows platform if (platform == 'windows' && !platformTag) { platformTag = pluginInfo._et.find('platform[@name="' + 'windows8' + '"]'); } if ( pluginInfo.hasPlatformSection(platform) ) { var sourceFiles = platformTag.findall('./source-file'), headerFiles = platformTag.findall('./header-file'), resourceFiles = platformTag.findall('./resource-file'), frameworkFiles = platformTag.findall('./framework'), libFiles = platformTag.findall('./lib-file');
Looks like pluginInfo.hasPlatformSection(platform) prevents plugin definitions to be applied for windows if they are defined under windows8
if I replace
if ( pluginInfo.hasPlatformSection(platform) ) {
with
if ( platformTag) {
then source-file and other definitions are correctly applied, but I see that added references (at lest for source-file) are not removed from CordovaApp.projitems after plugin uninstall