Loading...
--- xnu/xnu-517.3.7/libkern/c++/OSUnserialize.cpp
+++ xnu/xnu-1228/libkern/c++/OSUnserialize.cpp
@@ -1,16 +1,19 @@
/*
- * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
+ * Copyright (c) 2000-2006 Apple Computer, Inc. All rights reserved.
*
- * @APPLE_LICENSE_HEADER_START@
- *
- * Copyright (c) 1999-2003 Apple Computer, Inc. All Rights Reserved.
+ * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
*
* This file contains Original Code and/or Modifications of Original Code
* as defined in and that are subject to the Apple Public Source License
* Version 2.0 (the 'License'). You may not use this file except in
- * compliance with the License. Please obtain a copy of the License at
- * http://www.opensource.apple.com/apsl/ and read it before using this
- * file.
+ * compliance with the License. The rights granted to you under the License
+ * may not be used to create, or enable the creation or redistribution of,
+ * unlawful or unlicensed copies of an Apple operating system, or to
+ * circumvent, violate, or enable the circumvention or violation of, any
+ * terms of an Apple operating system software license agreement.
+ *
+ * Please obtain a copy of the License at
+ * http://www.opensource.apple.com/apsl/ and read it before using this file.
*
* The Original Code and all software distributed under the License are
* distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER
@@ -20,7 +23,7 @@
* Please see the License for the specific language governing rights and
* limitations under the License.
*
- * @APPLE_LICENSE_HEADER_END@
+ * @APPLE_OSREFERENCE_LICENSE_HEADER_END@
*/
/* OSUnserialize.y created by rsulack on Nov 21 1998 */
@@ -315,7 +318,7 @@
#define YYSTACK_USE_ALLOCA
#define alloca __builtin_alloca
#else /* not GNU C. */
-#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386))
+#if (!defined (__STDC__) && defined (sparc)) || defined (__sparc__) || defined (__sparc) || defined (__sgi) || (defined (__sun) && defined (__i386)) || defined (__arm)
#define YYSTACK_USE_ALLOCA
#include <alloca.h>
#else /* not sparc */
@@ -1011,7 +1014,7 @@
{
int size = 0;
char *msg;
- int x, count;
+ int x, count, len;
count = 0;
/* Start X at -yyn if nec to avoid negative indexes in yycheck. */
@@ -1019,10 +1022,11 @@
x < (sizeof(yytname) / sizeof(char *)); x++)
if (yycheck[x + yyn] == x)
size += strlen(yytname[x]) + 15, count++;
- msg = (char *) malloc(size + 15);
+ len = size + 15;
+ msg = (char *) malloc(len);
if (msg != 0)
{
- strcpy(msg, "parse error");
+ strlcpy(msg, "parse error", len);
if (count < 5)
{
@@ -1031,9 +1035,10 @@
x < (sizeof(yytname) / sizeof(char *)); x++)
if (yycheck[x + yyn] == x)
{
- strcat(msg, count == 0 ? ", expecting `" : " or `");
- strcat(msg, yytname[x]);
- strcat(msg, "'");
+ strlcat(msg, count == 0 ? ", expecting `" : " or `",
+ len);
+ strlcat(msg, yytname[x], len);
+ strlcat(msg, "'", len);
count++;
}
}
@@ -1568,7 +1573,7 @@
OSObject *object;
if (!lock) {
- lock = mutex_alloc(ETAP_IO_AHA);
+ lock = mutex_alloc(0);
mutex_lock(lock);
} else {
mutex_lock(lock);