I use Google Drive SDK in my app.
It has worked perfectly since around June 2014.
Following update to Xcode 6.3, none of my targets build.
The implementation file GTMOAuth2ViewControllerTouch.m contains two blocks that the compiler complains about:
if (accessibility == NULL
&& &kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly != NULL) {
accessibility = kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly;
}
specifically with the message: "Comparison of address of kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly
not equal to a null pointer is always true".
AND
if (accessibility != NULL && &kSecAttrAccessible != NULL) {
[keychainQuery setObject:(id)accessibility
forKey:(id)kSecAttrAccessible];
}
specifically with the message: "Comparison of address of kSecAttrAccessible
not equal to a null pointer is always true".
The compiler is telling me that the two keys when compared to != NULL
is always true.
I believe my lack of computer science training leaves me unable to understand the issue here - maybe that is just a bad perception?
I've had a look at this question but cannot understand the context in relation to my problem with Google Drive SDK implementation file GTMOAuth2ViewControllerTouch.m
I'd really like to understand the underlying issue.
Please help...
Instead of those snippets, you can use:
accessibility = kSecAttrAccessibleAfterFirstUnlockThisDeviceOnly;
and [keychainQuery setObject:(id)accessibility forKey:(id)kSecAttrAccessible];
This is because the constants will never have a NULL pointer, so there is no reason to do checking. I believe an update to the SDK is available to fix but you can do it manually.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With