You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@cordova.apache.org by "Shazron Abdullah (JIRA)" <ji...@apache.org> on 2016/08/02 06:30:21 UTC

[jira] [Resolved] (CB-11535) Logic error in uninstall frameworks in iOS

     [ https://issues.apache.org/jira/browse/CB-11535?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Shazron Abdullah resolved CB-11535.
-----------------------------------
    Resolution: Fixed
      Assignee: Shazron Abdullah

> Logic error in uninstall frameworks in iOS
> ------------------------------------------
>
>                 Key: CB-11535
>                 URL: https://issues.apache.org/jira/browse/CB-11535
>             Project: Apache Cordova
>          Issue Type: Bug
>          Components: iOS
>            Reporter: Shazron Abdullah
>            Assignee: Shazron Abdullah
>
> This is reference counting code.
> Line: https://github.com/apache/cordova-ios/blob/5c3885b807f4c9556bf350c72400827a333f78d3/bin/templates/scripts/cordova/lib/plugman/pluginHandlers.js#L100
> {code}
> project.frameworks[src] -= (project.frameworks[src] || 1) - 1;
> {code}
> which expands to:
> {code}
> project.frameworks[src] = project.frameworks[src] - (project.frameworks[src] || 1) - 1;
> {code}
> project.frameworks[src] would contain a number, or undefined.
> My guess is that the intent of this line is to decrement the reference count by 1. If the count was not set, the resulting count value should be negative, according to the next conditional "if (project.frameworks[src] < 1) {" where it would delete the entry in the object.
> The correct line should be:
> {code}
> project.frameworks[src] = (project.frameworks[src] || 1) - 1;
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@cordova.apache.org
For additional commands, e-mail: issues-help@cordova.apache.org