You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by br...@apache.org on 2015/01/14 02:31:24 UTC
svn commit: r1651549 - /subversion/trunk/subversion/libsvn_subr/sysinfo.c
Author: brane
Date: Wed Jan 14 01:31:23 2015
New Revision: 1651549
URL: http://svn.apache.org/r1651549
Log:
Fix a deprecation warning on Mac OS X 10.10.
* subversion/libsvn_subr/sysinfo.c:
On OSX, include AvailabilityMacros.h and make sure that
MAC_OS_X_VERSION_10_6 is defined.
(system_version_plist):
Depending on OSX version, use either CFPropertyListCreateWithData
or CFPropertyListCreateFromXMLData and ignore any errors returned
by either function, since we never displayed them anyway.
Double-check that a property list was actually returned.
Remove the now-unused variable 'errstr'.
Modified:
subversion/trunk/subversion/libsvn_subr/sysinfo.c
Modified: subversion/trunk/subversion/libsvn_subr/sysinfo.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_subr/sysinfo.c?rev=1651549&r1=1651548&r2=1651549&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_subr/sysinfo.c (original)
+++ subversion/trunk/subversion/libsvn_subr/sysinfo.c Wed Jan 14 01:31:23 2015
@@ -55,6 +55,10 @@
#ifdef SVN_HAVE_MACOS_PLIST
#include <CoreFoundation/CoreFoundation.h>
+#include <AvailabilityMacros.h>
+# ifndef MAC_OS_X_VERSION_10_6
+# define MAC_OS_X_VERSION_10_6 1060
+# endif
#endif
#ifdef SVN_HAVE_MACHO_ITERATE
@@ -927,7 +931,6 @@ system_version_plist(svn_boolean_t *serv
svn_error_t *err;
CFPropertyListRef plist = NULL;
CFMutableDataRef resource = CFDataCreateMutable(kCFAllocatorDefault, 0);
- CFStringRef errstr = NULL;
/* failed getting the CFMutableDataRef, shouldn't happen */
if (!resource)
@@ -974,16 +977,23 @@ system_version_plist(svn_boolean_t *serv
return NULL;
}
- /* ### CFPropertyListCreateFromXMLData is obsolete, but its
- replacement CFPropertyListCreateWithData is only available
- from Mac OS 10.6 onward. */
+#if __MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6
+ /* This function is only available from Mac OS 10.6 onward. */
+ plist = CFPropertyListCreateWithData(kCFAllocatorDefault, resource,
+ kCFPropertyListImmutable,
+ NULL, NULL);
+#else /* Mac OS 10.5 or earlier */
+ /* This function obsolete and deprecated since Mac OS 10.10. */
plist = CFPropertyListCreateFromXMLData(kCFAllocatorDefault, resource,
kCFPropertyListImmutable,
- &errstr);
+ NULL);
+#endif /* MAC_OS_X_VERSION_10_6 */
+
if (resource)
CFRelease(resource);
- if (errstr)
- CFRelease(errstr);
+
+ if (!plist)
+ return NULL;
if (CFDictionaryGetTypeID() != CFGetTypeID(plist))
{