Github user kamrik commented on the pull request:

    https://github.com/apache/cordova-plugman/pull/72#issuecomment-39915727
  
    Looks like the root of the problem is in config_keeper. The files there are 
identified by the "fake path" [see note], so when the same file is referenced 
as "config.xml" and "res/xml/config.xml", config keeper considers them to be 
two different files and changes for one of them get overwritten by the changes 
to the other.
    
    I think it would be better to solve the problem in config_keeper rather 
than here, otherwise we might hit it again later with another file that might 
get referenced as two different names.
    
    Maybe we could even go a level higher and avoid referring to the same file 
by two different names when generating the munge.
    
    Anyway, if you decide to go with the current solution, please add a commend 
about what it does. Otherwise it is very cryptic.
    
    [note]
    Fake path is constructed as project_root/file_name. It is used because 
deducing the full real path requires globbing which is very slow (tens of 
milliseconds in some cases). The assumption was that the same file will alway 
be referred to with the same file_name in the munges. This assumption is broken 
in this case.


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---

Reply via email to