Author: rfm
Date: Thu May 21 18:56:27 2015
New Revision: 38516

URL: http://svn.gna.org/viewcvs/gnustep?rev=38516&view=rev
Log:
Avoid some expensive checks when handling a new element.

Modified:
    libs/webservices/trunk/GWSElement.m

Modified: libs/webservices/trunk/GWSElement.m
URL: 
http://svn.gna.org/viewcvs/gnustep/libs/webservices/trunk/GWSElement.m?rev=38516&r1=38515&r2=38516&view=diff
==============================================================================
--- libs/webservices/trunk/GWSElement.m (original)
+++ libs/webservices/trunk/GWSElement.m Thu May 21 18:56:27 2015
@@ -546,28 +546,21 @@
          attributes: (NSDictionary*)attributes
 {
   NSString     *prefix = @"";
-
-  NSAssert([name length] > 0, NSInvalidArgumentException);
-  NSAssert(0 == [name rangeOfString: @":"].length,
-    NSInvalidArgumentException);
+  NSUInteger   nl = [name length];
+
+  NSAssert(nl > 0, NSInvalidArgumentException);
 
   if (nil != qualified)
     {
-      NSRange  r = [qualified rangeOfString: @":"];
-
-      if (0 == r.length)
-       {
-         NSAssert([qualified isEqualToString: name],
+      NSUInteger       ql = [qualified length];
+
+      NSAssert(ql >= nl, NSInvalidArgumentException);
+      if (ql > nl)
+       {
+         NSAssert(ql > nl + 1
+           && [qualified characterAtIndex: ql - nl] == ':',
            NSInvalidArgumentException);
-       }
-      else
-       {
-         NSString      *n;
-
-         prefix = [qualified substringToIndex: r.location];
-         n = [qualified substringFromIndex: NSMaxRange(r)];
-         NSAssert([n isEqualToString: name],
-           NSInvalidArgumentException);
+         prefix = [qualified substringToIndex: ql - nl - 1];
        }
     }
 


_______________________________________________
Gnustep-cvs mailing list
[email protected]
https://mail.gna.org/listinfo/gnustep-cvs

Reply via email to