Loading...
libkern/c++/OSString.cpp xnu-4570.71.2 xnu-3248.30.4
--- xnu/xnu-4570.71.2/libkern/c++/OSString.cpp
+++ xnu/xnu-3248.30.4/libkern/c++/OSString.cpp
@@ -68,10 +68,7 @@
 
     if (!cString || !super::init()) return false;
 
-    newLength = strnlen(cString, kMaxStringLength);
-    if (newLength >= kMaxStringLength) return false;
-
-    newLength++;
+    newLength = strlen(cString) + 1;
     newString = (char *) kalloc_container(newLength);
     if (!newString) return false;
 
@@ -97,8 +94,6 @@
 
     if (!cString || !super::init()) return false;
 
-    if (inlength >= kMaxStringLength) return false;
-
     newLength = inlength + 1;
     newString = (char *) kalloc_container(newLength);
     if (!newString) return false;
@@ -125,10 +120,7 @@
     if (!cString || !super::init())
         return false;
 
-    length = strnlen(cString, kMaxStringLength);
-    if (length >= kMaxStringLength) return false;
-
-    length++;
+    length = strlen(cString) + 1;
     flags |= kOSStringNoCopy;
     string = const_cast<char *>(cString);
 
@@ -280,7 +272,7 @@
       return false;
 
     unsigned int dataLen = obj->getLength ();;
-    const char * dataPtr = (const char *) obj->getBytesNoCopy ();
+    char * dataPtr = (char *) obj->getBytesNoCopy ();
 
     if (dataLen != length) {