fix: CDV.h wasn't bringing in Cordova.h consistently #1482
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Platforms affected
iOS
Motivation and Context
Plugins that included only
<Cordova/CDV.h>
were seeing issues around extendingCDVPlugin
.Description
Make
CDV.h
consistently importCordova.h
to define the full module.The fact that there's a circular dependency between the headers isn't actually a problem in Objective-C because it uses
#import
rather than#include
and the compiler ensures each header is only included once.Somehow that was also causing it to only evaluate the header once and not differentiate imports where the macro was defined vs not defined.
Testing
Compiled a test app whose plugins used
#import <Cordova/CDV.h>
and were broken before this change.Checklist